code: public void logMessage(LogLevel logLevel, String message, Class clazz, String methodName) {
      Date timeStamp = new Date();
      char border[] = new char[logLevel.toString().length() + 4];
      Arrays.fill(border, '*');
  
      synchronized (this.syncObject) {
        this.tracePrintStream.println(border);
        this.tracePrintStream.printf("* %s *  [%tc] [%d,%s] [%s] [%s] \"%s\"%n", logLevel.toString(), timeStamp, Thread.currentThread().getId(), 
            Thread.currentThread().getName(), clazz.getName(), methodName, message);
        this.tracePrintStream.println(border);
      }
    }
docs: Logs a message with the given logLevel and the originating class.
  
  @param logLevel one of the predefined levels INFO, WARNING, ERROR, FATAL and SEVERE
  @param message the to be logged message
  @param clazz the originating class
  @param methodName the originating method