@Override public void publish(LogRecord record) { // TODO Auto-generated method stub super.publish(record); } }
protected void publishInternal(final LogRecord record) { delegate.publish(record); }
@Override public void publish(LogRecord record) { Formatter formatter = LoggerUtils.formatterMap.get(Thread.currentThread()); if (formatter != null) { setFormatter(formatter); } super.publish(record); } }
@Override public void publish(LogRecord record) { EnvironmentImpl envImpl = LoggerUtils.envMap.get(Thread.currentThread()); /* * If the caller forgets to set and release the envImpl so there is no * envImpl, or if we are logging before the envImpl is completely set, * log to the generic ConsoleHandler without an identifying * prefix. That way, we get a message, but don't risk a * NullPointerException. */ if (envImpl == null){ super.publish(record); return; } if (envImpl.getConsoleHandler() == null){ super.publish(record); return; } envImpl.getConsoleHandler().publish(record); } }
ConsoleHandler console = new ConsoleHandler(); console.publish(new LogRecord(Level.INFO, "Hello logging!"));
/** * Publish a <tt>LogRecord</tt>. * <p> * The logging request was made initially to a <tt>Logger</tt> object, * which initialized the <tt>LogRecord</tt> and forwarded it here. * <p> * * @param record description of the log event. A null record is * silently ignored and is not published */ @Override public void publish(LogRecord record) { super.publish(record); synchronized (history) { history.add(record); if (history.size() > maxHistory) history.removeFirst(); } if (listener != null) { listener.publish(record); } }
public class DualConsoleHandler extends StreamHandler { private final ConsoleHandler stderrHandler = new ConsoleHandler(); public DualConsoleHandler() { super(System.out, new SimpleFormatter()); } @Override public void publish(LogRecord record) { if (record.getLevel().intValue() <= Level.INFO.intValue()) { super.publish(record); super.flush(); } else { stderrHandler.publish(record); stderrHandler.flush(); } } }