概述
在Lamda架构分析日志流水线时用到flume监控日志文件的变化。
开始测试时,用shell脚本模拟的简单日志,单条日志格式为:uid-url-ip
如下为我的shell脚本:
#! /bin/bash
randnum(){
shuf -i 1-100 -n 1
}
randseq(){
head /dev/urandom | tr -dc a-z | head -c 3
}
while :
do
ip=`randnum`.`randnum`.`randnum`.`randnum`
url=www.`randseq`.com
uid=`randnum`
result=$uid-$url-$ip
echo $result > /var/log/yum.log
done
通过这个脚本向/var/log/yum.log文件输入日志,通过flume采集到kafka,但是运行后发现kafka收集到的日志都是乱的,如下图:
并不是我所期待的形如:
最后发现问题所在之处是shell脚本。
echo $result > /var/log/yum.log
应该改为:echo $result >> /var/log/yum.log
echo >是修改文件,替换的意思,echo >>是追加的意思。
所以,就是说,flume监控文件,比如说3秒采集一次,它所采集的应该是比3秒前多的东西,也就是说它适合监控“仓库”,否则就会出问题。
最后
以上就是端庄玫瑰为你收集整理的flume监控文件内容遇到的问题的全部内容,希望文章能够帮你解决flume监控文件内容遇到的问题所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复