热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

MDCself4jlog4j,mdc设置的值无法打印出来,求问为什么?

问题:我的日志打印结果是这样的:[main]INFOTest-接口入参===

问题:
我的日志打印结果是这样的:
[main] INFO Test - 接口入参===



我想得到一个类似于这样的日志:f9e287fad9e84cff8b2c2f2ed92adbe6[main] INFO Test - 接口入参===

1.我的测试类
import org.apache.log4j.MDC;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;



public class Test {

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
static Logger logger = LoggerFactory.getLogger(Test.class);



public static void main(String[] args) {

    MDC.clear();

    MDC.put("logid", "f9e287fad9e84cff8b2c2f2ed92adbe6");

    MDC.put("merchant_id", 1);

    MDC.put("siteName", "北京");

    MDC.put("userName", "userwyh");



    MDC.put("mobile", "110");



    MDC.put("mchId", 12);

    MDC.put("mchName", "商户名称");



    logger.info("接口入参===");



}

2.我的log4j配置文件:

log4j.rootLogger=INFO, stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.Target=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.COnversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{2}: %m%n

log4j.logger.com.rong360.crawler=info,console,info,warn,error,fatal
logging.path=e:/logs/crawler-meituan/logs

log4j.appender.cOnsole=org.apache.log4j.ConsoleAppender
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.COnversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%p] [%l] [%t:%r] [%X{logid}] [%X{ip}] [%X{uri}] [%X{merchant_id}] [%X{user_id}] %m%n
log4j.appender.console.Threshold=INFO

log4j.appender.debug=com.rong360.crawler.log4j.Rong360DailyRollingFileAppender
log4j.appender.debug.layout=org.apache.log4j.PatternLayout
log4j.appender.debug.layout.COnversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%p] [%l] [%t:%r] [%X{logid}] [%X{ip}] [%X{uri}] [%X{merchant_id}] [%X{user_id}] %m%n
log4j.appender.debug.Threshold = DEBUG
log4j.appender.debug.append=true
log4j.appender.debug.File=debug.log

log4j.appender.info=com.rong360.crawler.log4j.Rong360DailyRollingFileAppender
log4j.appender.info.layout=org.apache.log4j.PatternLayout
log4j.appender.info.append=true
log4j.appender.info.layout.COnversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%p] [%l] [%t:%r] [%X{logid}] [%X{ip}] [%X{uri}] [%X{merchant_id}] [%X{user_id}] %m%n
log4j.appender.info.Threshold = INFO
log4j.appender.info.File=info.log

log4j.appender.warn=com.rong360.crawler.log4j.Rong360DailyRollingFileAppender
log4j.appender.warn.layout=org.apache.log4j.PatternLayout
log4j.appender.warn.layout.COnversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%p] [%l] [%t:%r] [%X{logid}] [%X{ip}] [%X{uri}] [%X{merchant_id}] [%X{user_id}] %m%n
log4j.appender.warn.Threshold = WARN
log4j.appender.warn.append=true
log4j.appender.warn.File=warn.log

log4j.appender.error=com.rong360.crawler.log4j.Rong360DailyRollingFileAppender
log4j.appender.error.layout=org.apache.log4j.PatternLayout
log4j.appender.error.layout.COnversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%p] [%l] [%t:%r] [%X{logid}] [%X{ip}] [%X{uri}] [%X{merchant_id}] [%X{user_id}] %m%n
log4j.appender.error.Threshold = ERROR
log4j.appender.error.append=true
log4j.appender.error.File=error.log

log4j.appender.fatal=com.rong360.crawler.log4j.Rong360DailyRollingFileAppender
log4j.appender.fatal.layout=org.apache.log4j.PatternLayout
log4j.appender.fatal.layout.COnversionPattern=%-d{yyyy-MM-dd HH:mm:ss,SSS} [%p] [%l] [%t:%r] [%X{logid}] [%X{ip}] [%X{uri}] [%X{merchant_id}] [%X{user_id}] %m%n
log4j.appender.fatal.Threshold = FATAL
log4j.appender.fatal.append=true
log4j.appender.fatal.File=fatal.log


   



推荐阅读
  • 学习mybatis的基础知识:mybatis入门教程(二)
    2019独角兽企业重金招聘Python工程师标准2.3MyBatisprintsql在log4j.properties配置文件中添加如下配置,让mybatis打 ... [详细]
  • 本文介绍了闭包的定义和运转机制,重点解释了闭包如何能够接触外部函数的作用域中的变量。通过词法作用域的查找规则,闭包可以访问外部函数的作用域。同时还提到了闭包的作用和影响。 ... [详细]
  • Linux重启网络命令实例及关机和重启示例教程
    本文介绍了Linux系统中重启网络命令的实例,以及使用不同方式关机和重启系统的示例教程。包括使用图形界面和控制台访问系统的方法,以及使用shutdown命令进行系统关机和重启的句法和用法。 ... [详细]
  • Java容器中的compareto方法排序原理解析
    本文从源码解析Java容器中的compareto方法的排序原理,讲解了在使用数组存储数据时的限制以及存储效率的问题。同时提到了Redis的五大数据结构和list、set等知识点,回忆了作者大学时代的Java学习经历。文章以作者做的思维导图作为目录,展示了整个讲解过程。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • C# 7.0 新特性:基于Tuple的“多”返回值方法
    本文介绍了C# 7.0中基于Tuple的“多”返回值方法的使用。通过对C# 6.0及更早版本的做法进行回顾,提出了问题:如何使一个方法可返回多个返回值。然后详细介绍了C# 7.0中使用Tuple的写法,并给出了示例代码。最后,总结了该新特性的优点。 ... [详细]
  • 本文介绍了在wepy中运用小顺序页面受权的计划,包含了用户点击作废后的从新受权计划。 ... [详细]
  • 使用eclipse创建一个Java项目的步骤
    本文介绍了使用eclipse创建一个Java项目的步骤,包括启动eclipse、选择New Project命令、在对话框中输入项目名称等。同时还介绍了Java Settings对话框中的一些选项,以及如何修改Java程序的输出目录。 ... [详细]
  • EPPlus绘制刻度线的方法及示例代码
    本文介绍了使用EPPlus绘制刻度线的方法,并提供了示例代码。通过ExcelPackage类和List对象,可以实现在Excel中绘制刻度线的功能。具体的方法和示例代码在文章中进行了详细的介绍和演示。 ... [详细]
  • 刚开始crousera上学习<algorithmspart1>但对JAVA实在是不熟。******************************************** ... [详细]
  • 一文了解Python collections模块中的deque用法[python头条资讯]
    Python中文网有大量免费的Python入门教程,欢迎大家来学习。collections是Python内建的一个集合模块,deque是双边队列,具有队列和栈的性质,在list的基 ... [详细]
  •   并查集是一种群众喜闻乐见的数据结构,其复杂度是数据结构中最奇葩的之一了,Tarjan证明其为阿克曼函数的反函数,在可以想象(不全面的解释啊)的范围内小于等于3。。。我们就把它当做O(1)吧。下面通 ... [详细]
  • 线上问题:JavaBean赋值基础类型抛出异常
    1问题复现1.1问题实体(JavaBean规范)赋值时,抛出异常。1.2原因使用基础类型定义属性,当使用null给属 ... [详细]
  • 昨夜西风凋碧树,独上高楼,望尽天涯路。——五代晏殊蝶恋花最近学习了APUE的一系列函数,要求用ifconfig命令来获取本机的网卡ip&# ... [详细]
  • springboot日志【转】【补】
     市面上的日志框架日志门面(日志的抽象层)日志实现JCL(JakartaCommonsLogging)(2014)SLF4j(SimpleLoggingFacadeforJava) ... [详细]
author-avatar
fionafongkaian
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有