背景

之前一篇文章中介绍了使用tail追踪显示日志文件内容。
【注】tail包使用方法可以参考上一篇文章
之后,遇到了一种特殊情况:
被监视的文件会被定期删除(日志过大被删等原因),立即重新创建并写入内容(日志)
在代码中重新监视该文件 显示监视了文件(相同文件) 但是并没有获取到写入的新内容

方法

后来查看了tail包内的内容终于找到
需要将之前监视开启的tail kill之后才行
以下是模拟代码

关键:tt.Kill(nil)


如果没有Kill直接tail.TailFile() 可以看到下图的结果
虽然显示监听了但并没有监听到新建立文件内的内容
在这里插入图片描述

kill之后重新监听则可以正常获取到新文件内的内容
在这里插入图片描述