从快速旋转的日志中捕获输出

从快速旋转的日志中捕获输出

我正在处理一个行为不当的第三方程序,如果我能向他们提供调试日志,供应商似乎很乐意提供帮助。他们告诉我如何打开和关闭调试日志,但是程序中的某个地方对日志文件的限制为 65 KB - 根据供应商的说法,这是硬编码的。一旦达到此日志限制,整个日志就会被删除,并创建一个具有相同名称的新文件。因此,在删除日志并创建新日志之前,仅保存了大约 1 分钟的调试日志。尝试tail -f日志没有帮助,因为当创建新日志时,它不再是同一个文件,所以tail只是停止。

由于程序运行在嵌入式 Linux 上,且工具支持极少(甚至没有 ssh 或 ftp,只有 telnet 可以连接),因此整个事情变得更加复杂。没有find命令,没有locateor slocate,我甚至没有谈论编译器。那里有 shell -sh并且ash- 仅此而已。我真的不知道如何捕获大约 20 分钟的调试日志。任何建议都将不胜感激。

答案1

您可以尝试编写一个小脚本,每约 50 秒读取日志文件并将其附加到另一个文件。

如果您有 cat 或 echo,这应该相对容易。

如果您编辑问题以发布日志文件的示例名称,我可以帮助您在 bash 脚本中匹配该名称

相关内容