private Profiler doStart(LoggerLevel logLevel, String message, Object... args) { init(message, args); logStartMessage(logLevel, message, args); return this; }
@Override public Profiler startDebug(String message, Object... args) { return doStart(LoggerLevel.DEBUG, message, args); }
@Override public long stopDebug() { return doStopWithoutMessage(LoggerLevel.DEBUG); }
private void logStartMessage(LoggerLevel loggerLevel, String message, Object... args) { if (shouldLog(logger, loggerLevel)) { StringBuilder sb = new StringBuilder(); sb.append(message); appendContext(sb); log(loggerLevel, sb.toString(), args); } }
@Override public long stopTrace(String message) { return doStop(LoggerLevel.TRACE, message, null, NO_MESSAGE_SUFFIX); }
private static void addSomeContext(Profiler profiler) { profiler.addContext("a_string", "bar"); profiler.addContext("null_value", null); profiler.addContext("an_int", 42); profiler.addContext("after_start", true); }
public static Profiler create(Logger logger) { return new DefaultProfiler(logger); }
@Override public long stopInfo(String message, Object... args) { return doStop(LoggerLevel.INFO, message, args, NO_MESSAGE_SUFFIX); }
@Override public Profiler startTrace(String message) { return doStart(LoggerLevel.TRACE, message); }
@Override public long stopInfo() { return doStopWithoutMessage(LoggerLevel.INFO); }
@Override public long stopDebug(String message) { return doStop(LoggerLevel.DEBUG, message, null, NO_MESSAGE_SUFFIX); }
@Override public Profiler startInfo(String message, Object... args) { return doStart(LoggerLevel.INFO, message, args); }
@Override public long stopTrace() { return doStopWithoutMessage(LoggerLevel.TRACE); }
@Override public long stopDebug(String message, Object... args) { return doStop(LoggerLevel.DEBUG, message, args, NO_MESSAGE_SUFFIX); }
@Override public Profiler startDebug(String message) { return doStart(LoggerLevel.DEBUG, message); }
@Override public long stopInfo(String message) { return doStop(LoggerLevel.INFO, message, null, NO_MESSAGE_SUFFIX); }
@Override public Profiler startInfo(String message) { return doStart(LoggerLevel.INFO, message); }
@Override public long stopTrace(String message, Object... args) { return doStop(LoggerLevel.TRACE, message, args, NO_MESSAGE_SUFFIX); }
@Override public Profiler startTrace(String message, Object... args) { return doStart(LoggerLevel.TRACE, message, args); }
@Override public long stopError(String message, Object... args) { return doStop(LoggerLevel.ERROR, message, args, NO_MESSAGE_SUFFIX); }