当前位置:首页 > 开发 > 系统架构 > 架构 > 正文

storm 自定义 日志文件

发表于: 2015-07-06   作者:商人shang   来源:转载   浏览:
摘要: Storm中的日志级级别默认为INFO,并且,日志文件是根据worker号来进行区分的,这样,同一个log文件中的信息不一定是一个业务的,这样就会有以下两个需求出现: 1. 想要进行一些调试信息的输出 2. 调试信息或者业务日志信息想要输出到一些固定的文件中   不要怕,不要烦恼,其实Storm已经提供了这样的支持,可以通过自定义logback 下的 cluster.xml 来输

Storm中的日志级级别默认为INFO,并且,日志文件是根据worker号来进行区分的,这样,同一个log文件中的信息不一定是一个业务的,这样就会有以下两个需求出现:

1. 想要进行一些调试信息的输出

2. 调试信息或者业务日志信息想要输出到一些固定的文件中

 

不要怕,不要烦恼,其实Storm已经提供了这样的支持,可以通过自定义logback 下的 cluster.xml 来输出自己想要的日志信息,并且自定义日志输出的格式。下面是我自定义的一些配置,其实跟storm提供的差不多。

<appender name="USER_REDIS_LOG" class="ch.qos.logback.core.rolling.RollingFileAppender">
      <file>${storm.log.dir}/user_redis.log</file><!-- log文件输出path -->
      <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
        <fileNamePattern>${storm.log.dir}/user_redis.log.%i</fileNamePattern><!-- 保留多个文件的文件命名格式 -->
        <minIndex>1</minIndex>
        <maxIndex>20</maxIndex><!-- 这两行可以共同配置保留多少个文件 -->
      </rollingPolicy>
      <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
        <maxFileSize>100MB</maxFileSize><!-- log文件的最大大小 -->
      </triggeringPolicy>
      <encoder>
        <pattern>%d{yyyy-MM-dd'T'HH:mm:ss.SSSZZ} %c{1} [%p] %m%n</pattern> <!-- 输出的日志信息的格式 -->
      </encoder>
  </appender>

 

<logger name="com.jd.ad.user" additivity="false" >
<!-- name 可以配置哪些包下的日志信息要输出,也可以精准到一个类 -->
    <level value="INFO"/><!-- 要输出的日志信息的级别,我要输出业务日志,则配置为INFO -->
    <appender-ref ref="USER_REDIS_LOG"/><!-- 上面的appender的name -->
  </logger>

 

 

storm 自定义 日志文件

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
为了便于分析应用程序的运行情况和BUG诊断,一般都会搞个日志输出。 当初看过一点Log4net,觉得有些
概述 本文已经同步到《Asp.net Vnext 系列教程 》中] 可以通过自定义日志,把错误消息记录到数据库
每个应用都是顺序执行的,在时间序列上都是串行的,每个具体应用在某个时刻只能有一个cpu正常处理,
Log.cs using System; using System.Collections.Generic; using System.Web; using System.IO; nam
开放环境,hadoop-0.20.2,hive-0.6 1.日志分隔符 2010-05-31 10:50:17|||61.132.4.82|||http://www.
拦截器的工作原理如上图,每一个Action请求都包装在一系列的拦截器的内部。拦截器可以在Action执行
开放环境,hadoop-0.20.2,hive-0.6 1.日志分隔符 Xml代码 2010-05-31 10:50:17|||61.132.4.82|||ht
Hibernate中使用log4j输出日志文件 Hibernate中使用slf4j控制日志文件的输出。其主要的jar包是slf4j
重做日志文件(redo log file) 对于Oracle数据库至关重要。它们是数据库的事务日志。通常只用于恢复
先了解SQLServer需要保存的日志记录: 1、 所有没有经过“检查点”的日志记录: SQLServer定时执行(
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号