暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Logger同业务模块,将不同的信息打到不同的日志中记录

464

目前是各个服务模块打到不同的日志文件中保存,这次是同一模块,将想输出的不同的信息,打印到不同的日志中去记录

首先在输出日志的位置新增

        private final Logger logger = LoggerFactory.getLogger(getClass());
    private Logger loggerInterceptor = LoggerFactory.getLogger("outToFile");
    复制

    之后两个不同的Logger对象,分别输出信息

    接下来是修改日志配置文件,原有的logback.xml是:

      <?xml version="1.0" encoding="UTF-8"?>
      <configuration>
      <!-- 控制台输出日志 -->
      <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
      <encoder>
      <pattern>%d{HH:mm:ss.SSS} %thread > %-5level %logger{35} - %m%n</pattern>
      </encoder>
      </appender>
      <!-- 日志输出 到文件-->
      <appender name="File" class="ch.qos.logback.core.rolling.RollingFileAppender">
      <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
      <fileNamePattern>./logs/ptmsbm/%d{yyyy-MM-dd}.log.zip</fileNamePattern>
      <maxHistory>270</maxHistory><!--日志最大保存时间-->
      </rollingPolicy>
      <encoder>
      <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} > %-5level %X{X-B3-TraceId:-} ${springAppName:-} %logger{35} - %m%n</pattern>
      </encoder>
      </appender>
      <logger name="org.springframework" level="ERROR"/>
      <logger name="org.springframework.cache" level="DEBUG"/>
      <logger name="org.apache.tomcat" level="ERROR"/>
      <logger name="org.eclipse" level="ERROR"/>
      <logger name="org.apache.commons.beanutils" level="ERROR"/>
      <logger name="org.foundation" level="DEBUG"/>
      <logger name="org.taikang.ptms" level="DEBUG"/>
      <root level="INFO">
      <appender-ref ref="Console"/>
      <appender-ref ref="File"/>
      </root>


      </configuration>
      复制

      只需要在configuration中新增刚才定义的logger和对应的输出日志路径即可:

        <?xml version="1.0" encoding="UTF-8"?>
        <configuration>
        <!-- 控制台输出日志 -->
        <appender name="Console" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
        <pattern>%d{HH:mm:ss.SSS} %thread > %-5level %logger{35} - %m%n</pattern>
        </encoder>
        </appender>
        <!-- 日志输出 到文件-->
        <appender name="File" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <fileNamePattern>./logs/ptmsbm/%d{yyyy-MM-dd}.log.zip</fileNamePattern>
        <maxHistory>270</maxHistory><!--日志最大保存时间-->
        </rollingPolicy>
        <encoder>
        <pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} > %-5level %X{X-B3-TraceId:-} ${springAppName:-} %logger{35} - %m%n</pattern>
        </encoder>
        </appender>
        <logger name="org.springframework" level="ERROR"/>
        <logger name="org.springframework.cache" level="DEBUG"/>
        <logger name="org.apache.tomcat" level="ERROR"/>
        <logger name="org.eclipse" level="ERROR"/>
        <logger name="org.apache.commons.beanutils" level="ERROR"/>
        <logger name="org.foundation" level="DEBUG"/>
        <logger name="org.taikang.ptms" level="DEBUG"/>
        <root level="INFO">
        <appender-ref ref="Console"/>
        <appender-ref ref="File"/>
        </root>


        <property name="logData" value="E:/Filez" >
        <statusListener class="ch.qos.logback.core.status.NopStatusListener" >




        <!-- 日志输出 到文件-->
        <appender name="LOG_INTERCEPTOR" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
        <fileNamePattern>${logData}/log-interceptor/%d{yyyy-MM-dd}.log.zip</fileNamePattern>
        <maxHistory>270</maxHistory><!--日志最大保存时间-->
        </rollingPolicy>
        <encoder>
        <pattern>
        %-20(%d{yyyy-MMM-dd HH:mm:ss} [%thread]) %-5level %logger{80} [%line] -%msg%n
        </pattern>
        <charset>UTF-8</charset>
        </encoder>
        </appender>


        <!--输出到指定日志文件-->
        <logger name="outToFile" level="INFO" additivity="false">
        <appender-ref ref="LOG_INTERCEPTOR"/>
        </logger>
        </configuration>
        复制

        这里测试是打到本地,运行后为:只打印了想要的日志,其余的logger打印到原有日志


        文章转载自琢磨先生DataBase,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

        评论