@Override public void publish(LogRecord record) { if ((record.getMessage() == null || record.getMessage().isEmpty()) && record.getThrown() == null) { //Nothing to log return; } Color color = Color.BLACK; if (record.getLevel().equals(Level.WARNING)) { color = Color.ORANGE; } else if (record.getLevel().equals(Level.SEVERE)) { color = Color.RED; } String msg = formatter.format(record); if (IOColorLines.isSupported(io)) { try { IOColorLines.println(io, msg, color); } catch (IOException ex) { outputWriter.println(msg); } } else { outputWriter.println(msg); } }