日志配置log4j 打印线程号

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# Set root logger level to WARN and append to stdout
log4j.rootLogger=INFO,stdout,R,R1
#日志文件输出目标,控制台/文件
#日志输出方式:控制台
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=com.youcompan.project.log4j.Log4jExPatternLayout
log4j.appender.stdout.layout.ConversionPattern=[xxxx] %d %5p %T (%c.%M:%L) - %m%n
#应用服务器日志目录
log4j.appender.R=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R.File=${catalina.home}/logs/ydbudget.log
log4j.appender.R.DatePattern = '.'yyyy-MM-dd'.log'
#log4j.appender.R.MaxFileSize=500KB
log4j.appender.R.layout=com.youcompan.project.log4j.Log4jExPatternLayout
log4j.appender.R.layout.ConversionPattern=[xxxx]%d%5p %T (%C.%M:%L) - %m%n
log4j.appender.R.Append=true
#应用根目录
log4j.appender.R1=org.apache.log4j.DailyRollingFileAppender
log4j.appender.R1.File=${webApp.root}logs/ydbudget.log
log4j.appender.R1.DatePattern = '.'yyyy-MM-dd'.log'
#log4j.appender.R1.MaxFileSize=500KB
log4j.appender.R1.layout=com.youcompan.project.log4j.Log4jExPatternLayout
log4j.appender.R1.layout.ConversionPattern=[xxxx]%d%5p %T (%C.%M:%L) - %m%n
log4j.appender.R1.Append=true

输出三个地方 配置基本一致, 当然相对路径不同,按日滚动吧

其中应用服务器 中${catalina.home}是tomcat系的自带系统变量 ,无需其他配置

而应用根目录中的${webApp.root} 是在web.xml中通过spring定义的

1
2
3
4
5
6
7
8
9
10
11
< context-param >
   < param-name >webAppRootKey</ param-name >
   < param-value >webApp.root</ param-value >
</ context-param >
< context-param >
   < param-name >log4jConfigLocation</ param-name >
   < param-value >classpath:log4j.properties</ param-value >
</ context-param >
< listener >  
    < listener-class >org.springframework.web.util.Log4jConfigListener</ listener-class >  
</ listener >

现在来看布局类的定义和pattern的配置,

Log4jExPatternLayout 这个类是继承自 org.apache.log4j.PatternLayout ,其主要功能就是为了让 pattern 中的 %T 显示 线程号,上代码,

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
public class Log4jExPatternLayout extends PatternLayout {
     public Log4jExPatternLayout(String pattern){
         super (pattern);
     }
      
     public Log4jExPatternLayout(){
         super ();
     }
      /**
       * 重写createPatternParser方法,返回PatternParser的子类
       */
      @Override
      protected PatternParser createPatternParser(String pattern) {
       return new Log4jExPatternParser(pattern);
      }
  
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
public class Log4jExPatternParser extends PatternParser {
  
     public Log4jExPatternParser(String pattern) {
         super (pattern);
     }
      /**
       * 重写finalizeConverter,对特定的占位符进行处理,T表示线程ID占位符
       */
      @Override
      protected void finalizeConverter( char c) {
       if (c == 'T' ) {
        this .addConverter( new ExPatternConverter( this .formattingInfo));
       } else {
        super .finalizeConverter(c);
       }
      }
  
      private static class ExPatternConverter extends PatternConverter {
  
       public ExPatternConverter(FormattingInfo fi) {
        super (fi);
       }
  
       /**
        * 当需要显示线程ID的时候,返回当前调用线程的ID
        */
       @Override
       protected String convert(LoggingEvent event) {
        return String.valueOf(Thread.currentThread().getId());
       }
  
      }
  
  
}

参考文档忘记了,这篇文章是后来整理的,感谢他们吧

 





转载于:https://www.cnblogs.com/juforg/p/3277656.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CATALINA_OPTS是一个环境变量,用于设置Tomcat服务器的JVM参数。根据提供的引用内容,我们可以看到不同的测试参数设置和优化参数设置。这些参数会影响Tomcat服务器的性能和内存使用情况。 在引用,CATALINA_OPTS的设置包括了以下参数: - 初始堆大小:-Xms30m 存活区比率:-XX:SurvivorRatio=8 - 最大堆大小:-Xmx30m - 使用并行GC:-XX:UseParallelGC - 打印GC详情:-XX:PrintGCDetails - 元空间大小:-XX:MetaspaceSize=64m - 打印GC日期时间戳:-XX:PrintGCDateStamps - GC日志文件路径:-Xloggc:/opt/tomcat8.5/logs/gc.log 在引用,CATALINA_OPTS的设置包括了以下参数: - 使用G1 GC:-XX:UseG1GC - 初始堆大小:-xms 30m - 最大堆大小:-xm×30m - 打印GC详情:-XX:PrintGCDetails - 元空间大小:-XX:MetaspaceSize=64m - 打印GC日期时间戳:-XX:PrintGCDateStamps - GC日志文件路径:-Xloggc :/opt/tomcat8.5/logs/gc.log - 并发GC线程数:-XX:ConcGCThreads=1 而在引用,CATALINA_OPTS的设置包括了以下参数: - 初始堆大小:-xms120m - 存活区比率:-XX:SurvivorRatio=8 - 最大堆大小:-Xmx120m - 使用并行GC:-XX:UseParallelGC - 打印GC详情:-XX:PrintGCDetails - 元空间大小:-XX:MetaspaceSize=64m - 打印GC日期时间戳:-XX:PrintGCDateStamps - GC日志文件路径:-Xloggc:/opt/tomcat8.5/logs/gc.log 这些参数可以根据需要进行调整,以优化Tomcat服务器的性能和内存使用情况。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值