log4j ----->flume
来源:互联网 发布:oracle sql rowcount 编辑:程序博客网 时间:2024/06/17 15:08
通过log4j \log4j2传输 json到 flume1.7
方式一:使用avro + flume-ng-log4jappender + 重写appender
log4j.appender.flume=com.log.SubLog4jAppender
message和stackTrace 以及自定字段 hostName----->封装json数据----->
flumeEvent = EventBuilder.withBody(msg, Charset.forName("UTF8"), hdrs);
方式二:使用tcp +logststash-gelf + flume源码SystemLogUtil
logststash-gelf 的\u0000刚好替换掉 flume tcp的 \n (大小可能有其他影响)
方式三:取用logststash-gelf的构造JSON其他同[方式一]相同
[方式二]有重连,[方式一]+[方式三]的重连问题 https://issues.apache.org/jira/browse/FLUME-2186
log4j2
org.apache.logging.log4j.core.layout
public byte[] toByteArray(LogEvent event) { byte[] bytes = this.getBytes(this.toSerializable(event)); return bytes; // return bytes.length > this.compressionThreshold?this.compress(bytes):bytes;}
com.log2.GelfLayout2
<?xml version="1.0" encoding="UTF-8"?><Configuration status="WARN" monitorInterval="300" packages="com.log2"><Appenders> <Console name="Console" target="SYSTEM_OUT"> <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/> </Console> <Flume name="eventLogger" compress="false"> <Agent host="192.168.56.103" port="6666"/> <GelfLayout2/> </Flume></Appenders><Loggers> <Root level="ERROR"> <AppenderRef ref="eventLogger" /> <AppenderRef ref="Console"/> </Root></Loggers></Configuration>
阅读全文
0 0
- flume log4j
- log4j + flume
- log4j flume
- log4j ----->flume
- 修改Flume Log4j Appender
- flume log4j日志接收
- Flume接收Log4j日志
- log4j集成flume-ng
- flume+log4j收集日志
- 8.Flume Log4J Appender
- flume学习03-flume收集log4j日志
- flume入门 log4j 输出日志到flume
- log4j与flume整合配置
- log4j+flume+kafka+strom整合
- zookeeper+kafka+storm+flume+log4j
- log4j输出日志到flume
- log4j输出日志到flume
- flume学习(一):log4j直接输出日志到flume
- Java中Comparable和Comparator区别小结
- Spring-boot 启动时碰到的错误
- Linux 任务执行
- Android Studio3.0后依赖ButterKnife不成功的解决方法
- wrk-服务器压力测试工具的使用(一)
- log4j ----->flume
- 分布式锁那点事
- 每日一练25
- 百度地图点击地图获取地址
- 过时的内核漏洞为新Dirty Cow 攻击创造机会
- Android Studio中创建keystore
- 修改maven的本地仓库
- javaweb目录结构
- SweetAlert