code: void log(SessionLogEntry entry, String formattedMessage) {
          int level = entry.getLevel();
          Throwable loggedException = entry.getException();
  
          String msgParm;
          if ((formattedMessage == null || formattedMessage.equals("")) && loggedException != null) {
              msgParm = loggedException.toString();
          } else {
              msgParm = "[" + this.channel + "] " + formattedMessage;
          }
  
          switch (level) {
              case 8:
                  return;
              case 7: // SEVERE
                  Tr.error(_tc, "PROVIDER_ERROR_CWWJP9992E", msgParm);
                  break;
              case 6:// WARN
                  Tr.warning(_tc, "PROVIDER_WARNING_CWWJP9991W", msgParm);
                  break;
              case 5: // INFO
                  Tr.info(_tc, "PROVIDER_INFO_CWWJP9990I", msgParm);
                  break;
              case 4: // CONFIG
                  // I'm not sure what to do with this level... just do (log) it.
                  Tr.info(_tc, "PROVIDER_INFO_CWWJP9990I", msgParm);
                  break;
              case 3: // FINE
              case 2: // FINER
              case 1: // FINEST
              case 0: // TRACE
                  Tr.debug(_tc, formattedMessage);
                  break;
          }// end switch
  
          // if there is an exception - only log it to trace
          if (_tc.isDebugEnabled() && loggedException != null) {
              Tr.debug(_tc, "throwable", loggedException);
          }
      }
docs: This method will only be called AFTER affirming that we should be logging