Merge "Issue #2142 when logging internally, let loggers format message and stacktrace" into development

Former-commit-id: d4d0e6470f [formerly 43a38c3834] [formerly 6131156e1b] [formerly d4d0e6470f [formerly 43a38c3834] [formerly 6131156e1b] [formerly 3856f4f1ea [formerly 6131156e1b [formerly 459706e89504f5102cebf7cc80047791dfc65c3a]]]]
Former-commit-id: 3856f4f1ea
Former-commit-id: 27a803a5e4 [formerly 776ce81773] [formerly 8df790d4198d571b372634fe14c3292cf029b58d [formerly 6fbc6bd5ac]]
Former-commit-id: 3173595a51566fccc8d0c52ceb9642895b066b7f [formerly 3aca22977e]
Former-commit-id: 5a7e47fd6c
This commit is contained in:
Ron Anderson 2013-08-27 17:08:45 -05:00 committed by Gerrit Code Review
commit 6e543f01fd

View file

@ -74,15 +74,21 @@ public class SystemStatusHandler extends AbstractStatusHandler {
final IStatus status = statusAdapter.getStatus();
StatusMessage sm = null;
String msg = null;
Throwable t = null;
if (status instanceof VizStatusInternal) {
VizStatusInternal vs = (VizStatusInternal) status;
msg = vs.getMessage();
t = vs.getException();
sm = vs.toStatusMessage();
} else {
sm = from(status);
msg = sm.getDetails();
}
Priority p = sm.getPriority();
try {
logStatus(sm);
logStatus(p, msg, t);
AlertVizClient.sendMessage(sm);
} catch (final AlertvizException e) {
// not a good situation, since we can't communicate with the log
@ -194,24 +200,23 @@ public class SystemStatusHandler extends AbstractStatusHandler {
return LogMessageDAO.getInstance().load(count, category);
}
private void logStatus(StatusMessage status) {
String msg = status.getDetails();
switch (status.getPriority()) {
private void logStatus(Priority priority, String message, Throwable t) {
switch (priority) {
case CRITICAL:
logger.error(FATAL, msg);
logger.error(FATAL, message, t);
break;
case SIGNIFICANT:
logger.error(msg);
logger.error(message, t);
break;
case PROBLEM:
logger.warn(msg);
logger.warn(message, t);
break;
case EVENTA: // fall through
case EVENTB:
logger.info(msg);
logger.info(message, t);
break;
case VERBOSE:
logger.debug(msg);
logger.debug(message, t);
break;
}
}