我发现在 syslog-ng-3.5 和 syslog-ng-3.6 版本中,即使我不使用,syslog-ng 默认情况下也会从 /dev/kmsg 读取
file ("/proc/kmsg" program_override("kernel: "));
in source{ },
当我使用docker容器时,我发现所有容器都会读取/dev/kmsg,这会出现一些问题。
那么我如何在configure中指定不读取/dev/kmsg?
答案1
您可能在配置中的某个位置使用了 system() 源。此源会自动读取特定于平台的源,并在 Linux 上读取 /dev/kmsg(如果内核版本为 3.5 或更高版本)(请参阅https://www.balabit.com/documents/syslog-ng-ose-3.6-guides/en/syslog-ng-ose-guide-admin/html/configuring-source-system.html)。
如果您确定不需要它,请从配置中删除 system() 源