in library/src/main/java/com/alibaba/dcm/agent/DcmAgent.java [135:166]
private static boolean doAction(final String action, final List<String> arguments, final PrintWriter filePrinter) {
final String argumentString = join(arguments);
if (!action2Method.containsKey(action)) {
logger.info(format(("%s: Unknown action %s, ignore! action: %<s %s!%n"), DcmAgent.class.getName(), action, argumentString));
if (filePrinter != null) {
filePrinter.printf("Unknown action %s, ignore! action: %<s %s !%n", action, argumentString);
}
return false;
}
try {
final Object result = invokeAction(action, arguments.toArray(new String[0]));
printActionResult(action, result, filePrinter);
return true;
} catch (Exception e) {
final String exString = throwable2StackString(e);
final String sdtoutExString;
if (isDcmAgentSuppressExceptionStack()) {
sdtoutExString = e.toString();
} else {
sdtoutExString = exString;
}
logger.info(format(("%s: Error to do action %s %s, cause: %s%n"), DcmAgent.class.getName(), action, argumentString, sdtoutExString));
if (filePrinter != null) {
filePrinter.printf("Error to do action %s %s, cause: %s%n", action, argumentString, exString);
}
return false;
}
}