private void processLogMessage(IStatus status) { if ((filter != null && !filter.accepts(status)) || !status.matches(this.logLevelMask)) { //no op; return; } String dateString = this.dateFormat.format(new Date()); String message = status.getMessage(); if (status.getException() != null) { message = message + '\n' + status.getException().getMessage(); StringWriter sw = new StringWriter(); status.getException().printStackTrace(new PrintWriter(sw)); String exceptionAsString = sw.toString(); message = message + '\n' + exceptionAsString; } connection.logMessage(getMessageTypeFromSeverity(status.getSeverity()), dateString + ' ' + message); }