private void performLogging()

in src/main/java/com/aliyun/tea/logging/ClientLogger.java [104:143]


    private void performLogging(LogLevel logLevel, boolean isExceptionLogging, String format, Object... args) {
        String throwableMessage = "";
        if (doesArgsHaveThrowable(args)) {
            if (!isExceptionLogging) {
                Object throwable = args[args.length - 1];
                if (throwable instanceof Throwable) {
                    throwableMessage = ((Throwable) throwable).getMessage();
                }
            }
            if (!logger.isDebugEnabled()) {
                args = removeThrowable(args);
            }
        }

        sanitizeLogMessageInput(format);
        switch (logLevel) {
            case VERBOSE:
                logger.debug(format, args);
                break;
            case INFORMATIONAL:
                logger.info(format, args);
                break;
            case WARNING:
                if (!StringUtils.isEmpty(throwableMessage)) {
                    format += System.lineSeparator() + throwableMessage;
                }
                logger.warn(format, args);
                break;
            case ERROR:
                if (!StringUtils.isEmpty(throwableMessage)) {
                    format += System.lineSeparator() + throwableMessage;
                }
                logger.error(format, args);
                break;
            default:
                // Don't do anything, this state shouldn't be possible.
                break;
        }

    }