private void innerNormalizedLoggingCallHandler(String fqcn, org.slf4j.event.Level level, Marker marker, String msg, Object[] args, Throwable throwable) {
        // millis and thread are filled by the constructor
        Level julLevel = slf4jLevelToJULLevel(level);
        String formattedMessage = MessageFormatter.basicArrayFormat(msg, args);
        LogRecord record = new LogRecord(julLevel, formattedMessage);

        // https://jira.qos.ch/browse/SLF4J-13
        record.setLoggerName(getName());
        record.setThrown(throwable);
        // Note: parameters in record are not set because SLF4J only
        // supports a single formatting style
        // See also https://jira.qos.ch/browse/SLF4J-10
        fillCallerData(fqcn, record);
        logger.log(record);
    }
Log the message at the specified level with the specified throwable if any.
This method creates a LogRecord and fills in caller date before calling this
instance's JDK14 logger.
slf4j-jdk14/src/main/java/org/slf4j/jul/JDK14LoggerAdapter.java