分享

flume如何实时读取不断追加的日志

1. 日志文件每天roate一个新文件
a)  方案一
There is no way the tail command itself can automatically switch to the new file with a different name when the date changes. Thus, you have to kill the old tail and start a new one in due time.

[mw_shl_code=bash,true]while
    tail -F `date +%Y%m%d.log`& sleep $(expr `date +%s -d'day 0'` - `date +%s`)
do  kill $!
done[/mw_shl_code]

b) 方案二
I am using flume-ng exec tailing rotated log files too. Here's my solution:

[mw_shl_code=bash,true]originAgent.sources.originSource2.type = exec                                                                                                                                             
originAgent.sources.originSource2.command = locktail_rotate.sh /path/to/test.DATE_ROTATE.log 'date +"%Y%m%d"'
And you can checkout locktail_rotate.sh from here. https://github.com/kylelin/locktail[/mw_shl_code]

另外一个参考: https://github.com/liuxuan207/TailSource+

来自:
http://blog.csdn.net/bright60/article/details/50728306

本帖被以下淘专辑推荐:

已有(4)人评论

跳转到指定楼层
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条