zoukankan      html  css  js  c++  java
  • Log4j tomcat下日志管理,解决日志文件过大无法清理问题

    1.log4j.properties配置文件如下

    # Global logging configuration
    log4j.rootLogger=info, stdout, RollingFile
    #log4j.rootLogger=WARN, stdout
    
    #Threshold 设置为OFF时控制台不再输出信息
    # Console output... log4j.appender.stdout
    =org.apache.log4j.ConsoleAppender log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
    log4j.appender.stdout.Threshold=OFF log4j.appender.stdout.layout.ConversionPattern
    =%-d{yyyy-MM-dd HH:mm:ss:SSS} [%p]-[%c] %m%n #${catalina.base}指向每个Tomcat目录私有信息的位置,就是conf、logs、webapps的父目录。 #File 指定消息输出到RollingFile.log文件中 #RollingFile (文件大小到达指定尺寸的时候产生一个新的文件) log4j.appender.RollingFile = org.apache.log4j.RollingFileAppender log4j.appender.RollingFile.File = ${catalina.base}/logs/RollingFile.log log4j.appender.RollingFile.MaxFileSize=100MB log4j.appender.RollingFile.MaxBackupIndex=3 log4j.appender.RollingFile.layout = org.apache.log4j.PatternLayout log4j.appender.RollingFile.layout.ConversionPattern =%d [%t] %-5p [%c] - %m%n

    MaxFileSize=100MB:后缀可以是KB, MB 或者GB。在日志文件到达该大小时,将会自动滚动,即将原来的内容移到RollingFile.log.1文件中。

    MaxBackupIndex=3:指定可以产生的滚动文件的最大数,例如,设为2则可以产生RollingFile.log.1,RollingFile.log.2两个滚动文件和一个RollingFile.log文件。

    Log4j中提供的Appender主要有以下几种:

    org.apache.log4j.ConsoleAppender(控制台), 

    org.apache.log4j.FileAppender(文件), 

    org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件), 

    org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件), 

    org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)

    2.将控制台异常详细信息保存在日志中

      try {
       //执行业务
      } catch (Exception e) {
       e.printStackTrace();
       log.info(getTraceString(e));
      }
    
    
    //异常信息转换字符串
    public String getTraceString(Throwable t) {
            StringWriter stringWriter= new StringWriter();
            PrintWriter writer= new PrintWriter(stringWriter);
            t.printStackTrace(writer);
            StringBuffer buffer= stringWriter.getBuffer();
            return buffer.toString();
    }
    

      

  • 相关阅读:
    SpringBoot整合ActiveMQ同时支持P2P和发布订阅模式(三)
    SpringBoot整合ActiveMQ的publish/subscribe发布订阅模式(二)
    Windows启动ActiveMQ报Wrapper Stopped错误
    IDEA从远程仓库克隆项目
    Git的安装
    IDEA上传项目到使用github上
    Mybaits的逆向工程
    posman测试接口需要登录验证的使用
    SSM整合SpringSecurity
    SpringBoot整合MongoDB的连接用户名和密码问题
  • 原文地址:https://www.cnblogs.com/haiyangsvs/p/14277713.html
Copyright © 2011-2022 走看看