flume log4j配置

1、依赖jar包导入,通过maven管理,pom文件增加如下配置:

  1. <!-- log4j输出日志到flume的appender依赖包 -->  
  2. <dependency>  
  3.     <groupId>org.apache.flume.flume-ng-clients</groupId>  
  4.     <artifactId>flume-ng-log4jappender</artifactId>  
  5.     <version>1.6.0</version>  
  6. </dependency>  
  1. <!-- log4j 依赖包-->  
  2. <dependency>  
  3.     <groupId>log4j</groupId>  
  4.     <artifactId>log4j</artifactId>  
  5.     <version>1.2.17</version>  
  6. </dependency>  
  7. <dependency>  
  8.     <groupId>org.slf4j</groupId>  
  9.     <artifactId>slf4j-api</artifactId>  
  10.     <version>1.7.5</version>  
  11. </dependency>  
  12. <dependency>  
  13.     <groupId>org.slf4j</groupId>  
  14.     <artifactId>slf4j-log4j12</artifactId>  
  15.     <version>1.7.5</version>  
  16. </dependency>  

  2、log4j配置文件:

2.1 log4j.properties文件配置:

  1. #log4j输出到flume单机模式配置  
  2. log4j.appender.loadbalance = org.apache.flume.clients.log4jappender.Log4jAppender  
  3. log4j.appender.loadbalance.hostname = hadoop011  
  4. log4j.appender.loadbalance.port = 6666  
  5.   
  6. #log4j输出到flume负载均衡方式配置  
  7. log4j.appender.loadbalance = org.apache.flume.clients.log4jappender.LoadBalancingLog4jAppender  
  8. log4j.appender.loadbalance.Hosts = hadoop011:6666 hadoop012:6666  
  9. #log4j.appender.loadbalance.UnsafeMode = true  
  10. log4j.appender.out2.MaxBackoff = 30000  
  11. #FQDN RANDOM ,default is ROUND_ROBIN  
  12. log4j.appender.loadbalance.Selector = RANDOM  
  13. log4j.appender.loadbalance.layout=org.apache.log4j.PatternLayout  
  14. log4j.appender.loadbalance.layout.ConversionPattern=%m  

2.2 XMl方式配置:

  1. <!-- 单机模式 -->  
  2. <appender name="FLUME"  
  3.     class="org.apache.flume.clients.log4jappender.Log4jAppender">  
  4.     <!-- 定义控制台日志级别入口 -->  
  5.     <param name="Hostname" value="192.168.12.11" />  
  6.     <param name="Port" value="6666" />  
  7.     <layout class="org.apache.log4j.PatternLayout">  
  8.         <param name="ConversionPattern"  
  9.             value="%d{yyyy-MM-dd hh:mm:ss,SSS} [%p][%t] %-20.30c{1} %4L %m%n" />  
  10.     </layout>  
  11. </appender>  
  12. <!-- 负载均衡方式 -->  
  13. <appender name="FLUME"  
  14.     class="org.apache.flume.clients.log4jappender.LoadBalancingLog4jAppender">  
  15.     <!-- 定义控制台日志级别入口 -->  
  16.     <param name="hosts" value="192.168.12.11:6666 192.168.12.12:6666" />  
  17.     <param name="Selector" value="RANDOM" />  
  18.     <param name="maxBackoff" value="30000" />  
  19.     <layout class="org.apache.log4j.PatternLayout">  
  20.         <param name="ConversionPattern"  
  21.             value="%d{yyyy-MM-dd hh:mm:ss,SSS} [%p][%t] %-20.30c{1} %4L %m%n" />  
  22.     </layout>  
  23. </appender>  


      注:以上配置中ip地址均可以使用hostname或域名替代。

原文地址:https://www.cnblogs.com/zhangshiwen/p/5830901.html