Flume 概述:
特点:高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。
选Flume的原因:FLume是流式传输实时处理的。
数据的传输过程:没有将用户产生的日志直接传输给大数据平台,而是传给日志服务器,可以按自己的需求方式去日志服务器获取。 不希望以你的方式来传输而时希望以我的方式去拿。
日志:<1>框架工作时候产生日志;<2>用户的操作行为被后台服务器收集后产生的用户行为日志。
Log4j:通过日志(log4j)的方式打印日志
日志的级别:Debug、Info、 Warn、 Error
Flume基础架构
WebServer -> Agent -> HDFS
Agent:JVM进程,由Source、Channel、Sink组成。
<1>Source:是负责接收数据到Flume Agent的组件
Netcat Source :实现对端口的监控。
Exec Source:可以实时搜集数据,不能实现断点续传,但是在Flume不运行或者Shell命令出错的情况下,数据将会丢失。
Spooling Directory Source:监控目录,支持断点续传,用于监控文件下的新增文件,将被采集过的文件做上标记后缀-Completed下次就不采集了,
只采集监控目录下的新文件,Spooling Dir 但不适合对实时追加日志的文件进行监听并同步。
TailDir Source:断点续传、多目录,可以监控文件夹下文件个数即文件的变化,但不支持递归监控文件夹,TailDir维护了一个json
格式的position File其会定期的往position File中更新每