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

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. 备份触发器:ADDC3

    CREATE OR REPLACE TRIGGER "XMV502"."ADDC3" before insert on bd_cubasdoc for each ...

  2. Hadoop总结篇之三---一个Job到底被提交到哪去了

    我们会定义Job,我们会定义map和reduce程序.那么,这个Job到底是怎么提交的?提交到哪去了?它到底和集群怎么进行交互的呢? 这篇文章将从头讲起. 开发hadoop的程序时,一共有三大块,也就 ...

  3. 使用git新建分支以及管理分支

    在进行分支相关的操作前, 我们需要保持主分支干净, 所谓的干净就是没有任何改变(所有更改都已经commit 并 push),那么你可以在任何时候从你的主分支创建一个新分支. 为了方便代码管理,我们应该 ...

  4. Windows 驱动程序工具包中的头文件

    MSDN原文:https://msdn.microsoft.com/zh-cn/library/windows/hardware/ff554695(v=vs.85).aspx Windows 驱动程序 ...

  5. 《所用到的AJAX技术基础》

    来自百度网页,w3cshool网页:AJAX = Asychronous JavaScript and XML,翻译成中文为:异步的JavaScript XML. 异步的意思就是不重新加载整个页面,后 ...

  6. 使用delphi+intraweb进行微信开发5—准备实现微信API,先从获取AccessToken开始

    在前4讲中我们已经使iw开发的应用成功和微信进行了对接,再接下来的章节中我们开始逐一尝试和实现微信的各个API,开始前先来点准备工作 首先需要明确的是,微信的API都是通过https调用实现的,分为p ...

  7. JNI相关知识

    JNI(Java Native Interface,JAVA原生接口) 使用JNI可以使Java代码和其他语言写的代码(如C/C++代码)进行交互. 问:为什么要进行交互? |-  首先,Java语言 ...

  8. yum命令——安装、卸载、查询等

    --常用命令 1.安装软件 yum install 软件名称 2.卸载软件 yum remove 软件名称 3.更新软件 yum update 软件名称 4.列出所有可安装的软件包 yum list ...

  9. Phoenix -修复表索引

    索引的修复可以通过2种方式,(关于pehoenix的索引的生命周期可以参考  https://community.hortonworks.com/articles/58818/phoenix-inde ...

  10. 【转】日期工具类DateUtils

    转自csdn,原作者:jzhf2012 package date.util; import java.text.ParseException; import java.text.SimpleDateF ...