tomcat自定义catalina.out日志记录格式 - 管理猿 2019 年 08 月 15 日 |访问: 126 次

适用版本:卓迈Portal服务器及同类使用log4j.appender.stdout.layout.ConversionPattern做日志记录的java软件
tomcat版本:tomcat7
一.日志格式分析
官方参数分析:https://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/PatternLayout.html
参数示例

%p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL,
log4j.rootLogger = INFO,stdout  这句中的INFO是设置了输出该级别以上的日志
INFO,WARN,ERROR,FATAL等消息都会输出。哪到底每条消息是哪个级别呢?%p就是输出该条消息的级别。
%d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyyy-MM-dd HH:mm:ss,SSS},输出类似:2011-10-18 22:10:28,921 
%r: 输出自应用启动到输出该log信息耗费的毫秒数 
%c: 输出日志信息所属的类目,通常就是所在类的全名(使用%c{n},只输出从右到左的N个级的名称)
%t: 输出产生该日志事件的线程名 
%l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码中的行数。 
%x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。 
%%: 输出一个"%"字符 
%F: 输出日志消息产生时所在的文件名称 
%L: 输出代码中的行号 
%m: 输出代码中指定的消息,产生的日志具体信息 
%n: 输出一个回车换行符,Windows平台为"\r\n",Unix平台为"\n"输出日志信息换行 
可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。如: 
1)%20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,默认的情况下右对齐。 
2)%-20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,"-"号指定左对齐。 
3)%.30c:指定输出category的名称,最大的宽度是30,如果category的名称大于30的话,就会将左边多出的字符截掉,但小于30的话也不会有空格。 
4)%20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边较远出现的字符截掉

二.查找对应的日志格式文件并修改

 find / -name log4*
 

QQ截图20190815120229.png
根据查找到的内容编辑日志格式文件

三.编辑内容示例

#log4j.rootLogger=ERROR, stdout ,logfile
log4j.rootLogger=INFO, stdout ,logfile
#log4j.rootLogger=DEBUG, stdout ,logfile
  
#\u5173\u95ED\u5176\u4ED6\u4FE1\u606F
log4j.logger.org.springframework=ERROR  
#\u4E0B\u9762\u7684\u914D\u7F6E\u4E0EMyBatis\u6709\u5173  
##MyBatis  
#log4j.logger.org.apache.ibatis=DEBUG  

log4j.appender.stdout=org.apache.log4j.ConsoleAppender
#log4j.appender.stdout.Threshold=DEBUG 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-p [%d{MMdd HH:mm:ss}#%c{3}:%L] %m%n
#log4j.appender.stdout.layout.ConversionPattern=%d [%t] %-p %c %x - \#%l\# - %m%n  ##以前的格式。
log4j.appender.logfile=org.apache.log4j.DailyRollingFileAppender
#log4j.appender.logfile.Threshold=INFO
log4j.appender.logfile.File=${catalina.home}/fastwork/fastwork_log.txt
log4j.appender.logfile.DatePattern='.'yyyy-MM-dd'.log'
log4j.appender.logfile.Append=true 
log4j.appender.logfile.layout=org.apache.log4j.PatternLayout
log4j.appender.logfile.layout.ConversionPattern=%d %p [%c] - %m%n

四.示例日志
修改后的日志显示
QQ截图20190815120434.png

标签:none

添加新评论