sonarLint:仅有条件地调用方法

问题描述 投票:0回答:1

我有这段代码:

logger.error("Unauthorized error: {} with request {} from {} ",
        authException.getMessage(),
        request.getServletPath(),
        getClientIp(request));

和:

  private static String getClientIp(HttpServletRequest request) {

        String remoteAddr = "";

        if (request != null) {
            remoteAddr = request.getHeader("X-FORWARDED-FOR");
            if (remoteAddr == null || "".equals(remoteAddr)) {
                remoteAddr = request.getRemoteAddr();
            }
        }

        return remoteAddr;
    }

但是我有这个警告:

 Invoke method(s) only conditionally
java sonarqube sonarqube-scan sonarlint sonarlint-intellij
1个回答
1
投票

您可以在登录前检查

isErrorEnabled

if (logger.isErrorEnabled())
    logger.error("Unauthorized error: {} with request {} from {} ",
        authException.getMessage(),
        request.getServletPath(),
        getClientIp(request));
© www.soinside.com 2019 - 2024. All rights reserved.