日志文件处理脚本

发布于 2024-11-05 01:30:16 字数 274 浏览 0 评论 0原文

我想编写一个脚本,在开始登录这些文件之前检查存储在 /var/log/[dir]/[name].log 中的我自己的日志文件,确定最后一条日志消息的日期是否早于当前消息的日期。如果发生这种情况,我必须对这些日志文件执行一些操作,然后刷新它们并使用新日期再次开始记录。我的守护进程在 Ubuntu Linux 10.10 启动时以运行级别 2 3 4 5 启动。因此我必须在其中存储此脚本,以便它可以从启动时和运行系统中间检查日志文件。在编写每条日志消息之前我是否必须检查它?因为这是检查每条日志消息的低效方法,所以任何建议将不胜感激。

I want to write a script that will check my own log files stored in /var/log/[dir]/[name].log before start logging in these files that whether date of last log message is older than date of current message. If it happens then I have to do some operations on these log files and then flush them and start logging again with new date. My daemon process starts at startup of Ubuntu Linux 10.10 in run level 2 3 4 5. So where I have to store this script so that it can check log files from startup and in the middle of running system. And would I have to check it before writing each log message. because this is inefficient method for checking every log message so any suggestion will be appreciated.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

轻许诺言 2024-11-12 01:30:16

您可以使用 Linux 实用程序 logrotate 来实现您想要做的事情。您可以

   <Your log file> {
       size=<>
       prerotate
                                 <Your script>
       endscript
       postrotate
                                 <Your script>
       endscript
   }

根据您的目的进行这样的简单配置。有关更多详细信息,请参阅 logrotate 手册页

You can use the Linux utility logrotate to achieve what you are trying to do. You can simple configuration like

   <Your log file> {
       size=<>
       prerotate
                                 <Your script>
       endscript
       postrotate
                                 <Your script>
       endscript
   }

this for your purpose. Have a look at logrotate man page for more details.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文