大数据全系列 教程
1869个小节阅读:468k
目录
408考研
JAVA全系列 教程
面向对象的程序设计语言
Python全系列 教程
Python3.x版本,未来主流的版本
人工智能 教程
顺势而为,AI创新未来
大厂算法 教程
算法,程序员自我提升必经之路
C++ 教程
一门通用计算机编程语言
微服务 教程
目前业界流行的框架组合
web前端全系列 教程
通向WEB技术世界的钥匙
大数据全系列 教程
站在云端操控万千数据
AIGC全能工具班
A A
White Night
具体实战步骤:
先停到flume:Ctrl+C
使用netcat-logger.conf拷贝spooldir-logger.conf
xxxxxxxxxx
[root@node3 jobs]# cp netcat-logger.conf spooldir-logger.conf
修改spooldir-logger.conf
xxxxxxxxxx
[root@node3 jobs]# vim spooldir-logger.conf
a1.sources.r1.type = spooldir
a1.sources.r1.spoolDir = /root/log
#采集后的文件,在原名称的后面添加的后缀
a1.sources.r1.fileSuffix = .itbaizhan
#忽略所有以.tmp结尾的文件
a1.sources.r1.ignorePattern = ([^ ]*\.tmp)
#fileHeader值为true表示显示信息从哪个文件中读取的,false不显示
a1.sources.r1.fileHeader = true
启动flume
xxxxxxxxxx
[root@node3 jobs]# flume-ng agent --conf ./ --name a1 --conf-file spooldir-logger.conf -Dflume.root.logger=INFO,console
启动后抛出以下异常:
java.lang.IllegalStateException: Directory does not exist: /root/log
这是因为目录没有创建,创建目录后再次启动,则解决了。
xxxxxxxxxx
[root@node3 jobs]# mkdir /root/log
[root@node3 jobs]# flume-ng agent --conf ./ --name a1 --conf-file spooldir-logger.conf -Dflume.root.logger=INFO,console
复制一个node3连接的xshell终端,/root/log目录下拷贝文本文件
xxxxxxxxxx
[root@node3 ~]# cp log.txt log/
查看flume输出日志:
xxxxxxxxxx
202x-12-20 15:10:12,101 INFO avro.ReliableSpoolingFileEventReader: Preparing to move fileot/log/log.txt to /root/log/log.txt.itbaizhan
202x-12-20 15:10:15,121 INFO sink.LoggerSink: Event: { headers:{file=/root/log/log.txt} b 69 74 62 61 69 7A 68 61 6E 31 itbaizhan1 }
202x-12-20 15:10:15,121 INFO sink.LoggerSink: Event: { headers:{file=/root/log/log.txt} b 69 74 62 61 69 7A 68 61 6E 32 itbaizhan2 }
查看/root/log目录
xxxxxxxxxx
[root@node3 ~]# ll /root/log
总用量 4
-rw-r--r-- 1 root root 154 12月 20 15:10 log.txt.itbaizhan
实时反馈
1. 关于Flume的Spooling Directory Source的描述,错误的是?注:a1代表agent的名称,r1代表source的名称,参数省略前面的"a1.sources.r1."
A type参数需指定为spooldir。
B spoolDir指定被监控的目录。
C fileSuffix指定被采集过的文件添加使用的后缀名。
D fileHeader值为true表示显示信息从哪个文件中读取的,false不显示,默认值为true。
答案:
1.D