请教:实时读取文件更新的内容时如何在不重启程序的情况下更换日志文件路径和正则表达式。

NonExistent · · 675 次点击
polaris
社区,需要你我一同完善!
实话说,我咋感觉这更像是一篇文章,介绍实时读取文件更新的内容时如何在不重启程序的情况下更换日志文件路径和正则表达式。 所以,不知道你的问题是啥?你这代码有问题还是怎么的?
#1
更多评论
我现在遇见的问题是,运行程序后我更新配置文件的内容viper也能监听到文件修改但是`go GetErrorLog(path, "^(.*)\\[E\\](.*)")`中监控的文件的path并没有发生变化。
#2
看了3遍,总算明白了…… 你需要做的是,发现文件更新后,Close了tail的lines这个cha。 ``` if !ok { time.Sleep(100 * time.Millisecond) continue } ``` 这一段改掉,改成退出 然后重新启一个监听协程,即再 go GetErrorLog一下 另外你这个正则的编译明显不该放在循环内
#3