code: protected void log(LogLevel level,Object[] message,Throwable throwable)
      {
          if(level.getValue()>=this.logLevel.getValue())
          {
              //log the message
              this.logImpl(level,message,throwable);
          }
      }
docs: Logs the provided data.
  
  @param   level
  The log level
  @param   message
  The message parts (may be null)
  @param   throwable
  The error (may be null)