Java slfj4日志记录-MDC.put函数不打印任何内容
我正在尝试使用slfj4 MDC类打印登录的用户名及其在日志中的id。这是我的密码,请告诉我哪里错了 JAVA文件-Java slfj4日志记录-MDC.put函数不打印任何内容,java,logging,log4j,slf4j,mdc,Java,Logging,Log4j,Slf4j,Mdc,我正在尝试使用slfj4 MDC类打印登录的用户名及其在日志中的id。这是我的密码,请告诉我哪里错了 JAVA文件- @RequestMapping(value = "/get/{id}", method = RequestMethod.GET, produces = "application/json") @ResponseBody public classResponse getuser(@PathVariable("user_id") Integer user_id, @RequestPa
@RequestMapping(value = "/get/{id}", method = RequestMethod.GET, produces = "application/json")
@ResponseBody
public classResponse getuser(@PathVariable("user_id") Integer user_id, @RequestParam(value = "department_id", required = false) Integer department_id) {
JSONObject response = null;
String username = getUserName();
logger.debug("Testing MDC.");
MDC.put("FirstName", "First");
MDC.put("LastName", "Last");
logger.info(":::ServiceContoller.getuser starts for userid" + user_id);
logger.info(":::ServiceContoller.getCreateEnvironment:Ends for username" + username);
try {
response = classServiceImpl.getUser1(username, user_id, department_id);
logger.info("Sending Environment details - {}", response);
} catch (Exception e) {
logger.error(e.getMessage(), e);
return new ClassResponse(Constants.STR_ERROR, "Error getting USERDetails");
}
return new ClassResponse(Constants.STR_SUCCESS, response);
}
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<layout>
<Pattern>%-4r [%thread] %-5level C:%X{FirstName} N:%X{LastName} - %m%n</Pattern>
</layout>
</appender>
<root>
<level value="info" />
<appender-ref ref="CONSOLE"/>
</root>
</configuration>
XML属性文件-logback.XML-
@RequestMapping(value = "/get/{id}", method = RequestMethod.GET, produces = "application/json")
@ResponseBody
public classResponse getuser(@PathVariable("user_id") Integer user_id, @RequestParam(value = "department_id", required = false) Integer department_id) {
JSONObject response = null;
String username = getUserName();
logger.debug("Testing MDC.");
MDC.put("FirstName", "First");
MDC.put("LastName", "Last");
logger.info(":::ServiceContoller.getuser starts for userid" + user_id);
logger.info(":::ServiceContoller.getCreateEnvironment:Ends for username" + username);
try {
response = classServiceImpl.getUser1(username, user_id, department_id);
logger.info("Sending Environment details - {}", response);
} catch (Exception e) {
logger.error(e.getMessage(), e);
return new ClassResponse(Constants.STR_ERROR, "Error getting USERDetails");
}
return new ClassResponse(Constants.STR_SUCCESS, response);
}
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
<layout>
<Pattern>%-4r [%thread] %-5level C:%X{FirstName} N:%X{LastName} - %m%n</Pattern>
</layout>
</appender>
<root>
<level value="info" />
<appender-ref ref="CONSOLE"/>
</root>
</configuration>
%-4r[%thread]-5C级:%X{FirstName}N:%X{LastName}-%m%N
请告诉我我还需要什么或者我错在哪里。谢谢你的帮助。提前谢谢你。你能试试这个吗
%-4相对[%thread]-5级别%logger{35}-%msg%n
谢谢。我也试过这个。但是没有起作用。发现一个非常好的项目:它解决了我的问题。你能找出问题所在吗?