我在 Linux 2.6 内核中运行我的专有应用程序(我不愿透露其名称),该应用程序在嵌入式环境中的 PowerPC(P2020)上运行。我正在使用 syslog-ng 从我的应用程序中收集日志。
当应用程序运行过程中系统负载过重时,会发现日志文件中的时间戳出现跳变,即日志文件中相当长的时间内没有日志。
我已启用看门狗硬件,如果系统因运行应用程序而挂起,则重置处理器,但没有看到处理器重置,这意味着应用程序运行良好。然而,当系统负载过重时,时间仍然会发生跳跃。
这是 syslog-ng 的已知行为吗?有什么方法可以避免这种时间跳跃?请给我一些输入或文档,其中已报告了此问题并给出了解决方案。
答案1
我思考不幸的是,这比任何软件包都更不可或缺Syslog
。我知道内部 Linux 时钟是,kernel clock
但它有其他名称。
我在运行 Gentoo 的老式 SPARC64 系统上遇到了很多高负载问题,导致时钟频繁偏差。Evenntpd
最终不合适(说来话长),所以我ntpdate ntp.blah.com
每半小时 cron 一次以保持时钟基本正常,然后在每次启动时使用 将时间写入硬件时钟hwclock
。
更多的这里。
如果迷你 HOWTO 中的详细信息不够详细,则可能需要搜索kernel clock
或类似内容。system clock linux