@Override
  public String format(LogRecord record) {
    StringBuilder sb = new StringBuilder();
    sb.append('[');
    sb.append(org.apache.persistence.admin.Logger.formatDate(new Date(record.getMillis())));
    sb.append(' ');
    sb.append(Thread.currentThread().getName());
    sb.append("] ");
    sb.append(record.getMessage());
    sb.append('\n');

    if (record.getSourceClassName() != null) {
      sb.append(" In ");
      sb.append(record.getSourceClassName());
      if (record.getSourceMethodName() != null) {
        sb.append(".");
        sb.append(record.getSourceMethodName());
      }
      sb.append('\n');
    }

    Object[] params = record.getParameters();
    if (params != null) {
      for (final Object param : params) {
        sb.append(param);
        sb.append('\n');
      }
    }

    if (record.getThrown() != null) {
      Throwable thr = record.getThrown();
      StringWriter sw = new StringWriter();
      thr.printStackTrace(new PrintWriter(sw, true));
      sb.append(sw);
      sb.append('\n');
    }

    if (STACK_TRACE) {
      Exception thr = new Exception("Stack Trace");
      StringWriter sw = new StringWriter();
      thr.printStackTrace(new PrintWriter(sw, true));
      sb.append(sw);
      sb.append('\n');
    }

    sb.append('\n');

    return (sb.toString());
  }
A Formatter that returns a textual description of a LogRecord
geode-core/src/test/java/org/apache/persistence/logging/SimpleFormatter.java