加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash – 尾部采样日志

发布时间:2020-12-15 20:57:40 所属栏目:安全 来源:网络整理
导读:我有一个进程需要对不断增长的日志文件进行定期处理.现在,我这样做的方式非常简单(如果你真的很好奇,我会包含bash脚本). 启动tail -n0 -f $FILE 每次迭代: 杀死尾巴 移动旧样本 开始新的尾巴 这解决了没有任何重叠的问题,但我担心我可能错过的1或2行.有没有
我有一个进程需要对不断增长的日志文件进行定期处理.现在,我这样做的方式非常简单(如果你真的很好奇,我会包含bash脚本).

>启动tail -n0 -f $FILE
>每次迭代:

>杀死尾巴
>移动旧样本
>开始新的尾巴

这解决了没有任何重叠的问题,但我担心我可能错过的1或2行.有没有更好的方法来避免重叠(和“下”圈)?

解决方法

通过“移动旧样本”,我假设您的意思是通过移动当前文件并用新文件替换它来旋转文件.

如果是这样,那么你可以使用–follow = name选项代替-f.这遵循文件名而不是文件描述符,即使文件被替换也允许它继续.然后,您可以在更换文件时保持尾部运行,不会错过任何条目.

对于更健壮的方法,还包括–retry,或者简单地使用-F,这意味着–follow = name –retry.

从手册页:

-f,--follow[={name|descriptor}]

output appended data as the file grows; -f,--follow,and --follow=descriptor are equivalent

??
?? – 重试
??
??

keep trying to open a file even if it is inaccessible when tail starts or if it becomes inaccessible later – useful only with -f

??
??-F
??
??

same as --follow=name --retry

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读