版权声明:本文为博主原创文章,未经博主允许不得转载。

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. #log4j输出到flume负载均衡方式配置
  6. log4j.appender.loadbalance = org.apache.flume.clients.log4jappender.LoadBalancingLog4jAppender
  7. log4j.appender.loadbalance.Hosts = hadoop011:6666 hadoop012:6666
  8. #log4j.appender.loadbalance.UnsafeMode = true
  9. log4j.appender.out2.MaxBackoff = 30000
  10. #FQDN RANDOM ,default is ROUND_ROBIN
  11. log4j.appender.loadbalance.Selector = RANDOM
  12. log4j.appender.loadbalance.layout=org.apache.log4j.PatternLayout
  13. 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或域名替代。

flume log4j配置的更多相关文章

  1. Flume学习 & Kafka & Storm 等 & Log4J 配置

    正在学习这篇文章: http://blog.csdn.net/ymh198816/article/details/51998085 和工作中接触的电商.订单.分析,可以结合起来. 开宗明义,这幅图片: ...

  2. Flume+LOG4J+Kafka

    基于Flume+LOG4J+Kafka的日志采集架构方案 本文将会介绍如何使用 Flume.log4j.Kafka进行规范的日志采集. Flume 基本概念 Flume是一个完善.强大的日志采集工具, ...

  3. Scala + Thrift+ Zookeeper+Flume+Kafka配置笔记

    1. 开发环境 1.1. 软件包下载 1.1.1. JDK下载地址 http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downl ...

  4. 使用log4j配置不同文件输出不同内容

    敲代码中很不注意写日志,虽然明白很重要.今天碰到记录日志,需要根据内容分别输出到不同的文件. 参考几篇文章: 感觉最详细:http://blog.csdn.net/azheng270/article/ ...

  5. log4j 配置

    给java项目添加log4j日志: 1.下载log4j jar包,放入lib目录, 导入项目中 2.创建log4j.properties 文件  目录 Src 3.在需要使用输出的类中使用 priva ...

  6. log4j配置日志文件log4j.appender.R.File相对路径方法

    方法一. 解决的办法自然是用相对路径代替绝对路径,其实log4j的FileAppender本身就有这样的机制,如:log4j.appender.logfile.File=${WORKDIR}/logs ...

  7. paip.Log4j配置不起作用的解决

    paip.Log4j配置不起作用的解决 1.jar包里的log4j配置 看累挂jar,真的有个" webservices-rt.jar\com\sun\org\apache\xml\inte ...

  8. Log4j配置全说明

    转载:http://zhangjunhd.blog.51cto.com/113473/21014/ 1.Log4j简介 Log4j是Apache的一个开源项目,它允许开发者以任意间隔输出日志信息.Lo ...

  9. 简要log4j配置

    若排版紊乱可查看我的个人博客原文地址 1. 配置效果 下面的log4j日志配置最终能达到的效果是对于全局日志可以根据级别输入到对应级别的日志文件中,注意低级别的日志文件会同时包含高级别的日志信息,例如 ...

随机推荐

  1. Java实现多线程的三种方式

    Java多线程实现方式主要有三种:继承Thread类.实现Runnable接口.使用ExecutorService.Callable.Future实现有返回结果的多线程.前两种方式启动的线程没有返回值 ...

  2. web服务器和ftp服务器有什么区别

    WEB是以一个网页的形势展现出来的,FTP是一个上传和下摘的软件统称,一般,在网站制作中有WEB和FTP两种上传文件的方式,WEB是通过文件夹复制的方式将本地文件传到服务器上,速度较慢,FTP是通过不 ...

  3. HttpClientUtil [使用apache httpclient模拟http请求]

    基于httpclient-4.5.2 模拟http请求 以get/post方式发送json请求,并获取服务器返回的json -------------------------------------- ...

  4. 黄聪:微信支付错误两个问题的解决:curl出错,错误码:60

    如下是运行微信支付测试代码时出错代码: Warning: curl_setopt() expects parameter 2 to be long, string given in D:\wwwroo ...

  5. JAVA正则表达式:Pattern类与Matcher类详解(转)

    java.util.regex是一个用正则表达式所订制的模式来对字符串进行匹配工作的类库包.它包括两个类:Pattern和Matcher Pattern 一个Pattern是一个正则表达式经编译后的表 ...

  6. Codeforces Round #381 (Div. 2)D. Alyona and a tree(树+二分+dfs)

    D. Alyona and a tree Problem Description: Alyona has a tree with n vertices. The root of the tree is ...

  7. 本地新建项目提交到github

    1.在github上创建项目(可以添加README.md),创建后的地址为 https://github.com/xxx/xxx-demo.git 2.在eclipse上新建个quick-start的 ...

  8. java安全沙箱(一)之ClassLoader双亲委派机制

    java是一种类型安全的语言,它有四类称为安全沙箱机制的安全机制来保证语言的安全性,这四类安全沙箱分别是: 类加载体系 .class文件检验器 内置于Java虚拟机(及语言)的安全特性 安全管理器及J ...

  9. Disconf

    通常我们会做如下配置:(disconf 2.6.21) <!-- 一次扫描 --> <bean id="disconfMgrBean" class="c ...

  10. retrieve jenkins console output

    @Api(value = "console", description = "Retrieve the Console Outputs",produces=Me ...