in log/src/main/java/org/apache/karaf/cellar/log/shell/LogDisplayException.java [41:72]
public Object doExecute() throws Exception {
String nodeId = null;
if (nodeIdOrAlias != null) {
Node node = clusterManager.findNodeByIdOrAlias(nodeIdOrAlias);
if (node == null) {
System.err.println("Node " + nodeIdOrAlias + " doesn't exist");
return null;
}
nodeId = node.getId();
}
ClassLoader originalClassLoader = Thread.currentThread().getContextClassLoader();
Thread.currentThread().setContextClassLoader(getClass().getClassLoader());
try {
Map<ClusterLogKey, ClusterLogRecord> clusterLog = clusterManager.getMap(LogAppender.LOG_MAP);
for (ClusterLogKey key : clusterLog.keySet()) {
ClusterLogRecord record = clusterLog.get(key);
if (record.getThrowableStringRep() != null && record.getThrowableStringRep().length > 0) {
if (nodeId == null || (nodeId != null && key.getNodeId().equals(nodeId))) {
if (logger == null || (logger != null && record.getLoggerName().contains(logger))) {
for (String throwable : record.getThrowableStringRep()) {
System.out.println(throwable);
}
System.out.println();
}
}
}
}
} finally {
Thread.currentThread().setContextClassLoader(originalClassLoader);
}
return null;
}