storm中的log4j到logback的迁移(自定义日志)

[Everyday it gets a little easier. But you gotta do it every day. That's the hard part. But it does get easier. ——Bojack Horseman  S2E12 ]

1.背景

代码里的自定义日志打印使用的是log4j,storm使用的是logback,自定义日志输出。

2.步骤

    (1)在代码中使用slf4j替换log4j
package cn.com.maixiaohai.tianjiao.etl.realtime;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class RedundantFields {
    private static Logger redundant = LoggerFactory.getLogger(RedundantFields.class);
    ...
   }
  
  (2)配置logback的xml文件
   地址 ${storm.log.dir}/logback/worker.xml
   以下为logback配置的基本结构:
   
  根据logback配置的结构,需要增加logger和对应的appender:
<appender name="REDUNDANT" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
      <fileNamePattern>${storm.log.dir}/redundant-%d{yyyy-MM-dd}.log</fileNamePattern>
      <maxHistory>10</maxHistory>
    </rollingPolicy>
    <encoder>
      <pattern>%d{yyyy-MM-dd'T'HH:mm:ss.SSSZZ} %c{1} [%p] %m%n</pattern>
    </encoder>
</appender>

<logger name="cn.com.maixiaohai.tianjiao.etl.realtime.RedundantFields" additivity="false">
  <level value="INFO"/>
  <appender-ref ref="REDUNDANT"/>
</logger>
appender的name和logger中appender-ref的ref值必须一致,logger的name为对应java类路径
此路径${storm.log.dir}/redundant-%d{yyyy-MM-dd}.log会有需要的输出
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值