简洁版本:

简洁版本:

简洁版本:

我想阻止以下消息出现在我的系统日志中。它们与我键盘上的 USB 端口有关,可以忽略:

Feb  9 23:33:45 sunfire kernel: [ 8163.156041] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci   

我已经编辑/etc/rsyslog.d/50-default.conf并添加了一个过滤器:

:msg, contains, "3-6.2.4: reset full"

当我重新启动服务时:/etc/init.d/rsyslog restart它导致:

Feb 10 00:23:57 sunfire rsyslogd: [origin software="rsyslogd" swVersion="8.16.0" x-pid="754" x-info="http://www.rsyslog.com"] exiting on signal 15.
Feb 10 00:23:57 sunfire rsyslogd: [origin software="rsyslogd" swVersion="8.16.0" x-pid="3982" x-info="http://www.rsyslog.com"] start
Feb 10 00:23:57 sunfire rsyslogd-2222: command 'KLogPermitNonKernelFacility' is currently not permitted - did you already set it via a RainerScript command (v6+ config)? [v8.16.0 try http://www.rsyslog.com/e/2222 ]
Feb 10 00:23:57 sunfire rsyslogd-2207: error during parsing file /etc/rsyslog.conf, on or before line 62: syntax error on token '' [v8.16.0 try http://www.rsyslog.com/e/2207 ]
Feb 10 00:23:57 sunfire rsyslogd-2207: CONFIG ERROR: could not interpret master config file '/etc/rsyslog.conf'. [v8.16.0 try http://www.rsyslog.com/e/2207 ]
Feb 10 00:23:57 sunfire rsyslogd: rsyslogd's groupid changed to 109
Feb 10 00:23:57 sunfire rsyslogd: rsyslogd's userid changed to 105
Feb 10 00:23:57 sunfire systemd[1]: Stopping System Logging Service...
Feb 10 00:23:57 sunfire systemd[1]: Stopped System Logging Service.
Feb 10 00:23:57 sunfire systemd[1]: Starting System Logging Service...
Feb 10 00:23:57 sunfire systemd[1]: Started System Logging Service.
Feb 10 00:23:57 sunfire rsyslogd-2039: Could not open output pipe '/dev/xconsole':: No such file or directory [v8.16.0 try http://www.rsyslog.com/e/2039 ]
Feb 10 00:23:57 sunfire rsyslogd-2007: action 'action 10' suspended, next retry is Wed Feb 10 00:24:27 2016 [v8.16.0 try http://www.rsyslog.com/e/2007 ]
Feb 10 00:25:49 sunfire kernel: [11287.416037] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci

显然并没有停止我想要停止的记录。

在我开始过多地处理这个问题之前,我想我会尝试寻求一些帮助。

谢谢。

长版:

我有一个键盘,当插入我的任何盒子时(主要是在 14.04 LTS、Raspian、OSX 和 FreeBSD 上运行 Ubuntu 的各种迭代),它会在系统日志中报告错误。该错误特别是:

Feb  9 23:33:45 sunfire kernel: [ 8163.156041] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci
Feb  9 23:33:49 sunfire kernel: [ 8166.828038] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci
Feb  9 23:33:55 sunfire kernel: [ 8172.804042] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci
Feb  9 23:34:00 sunfire kernel: [ 8178.172050] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci
Feb  9 23:34:23 sunfire kernel: [ 8201.524041] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci
Feb  9 23:35:19 sunfire kernel: [ 8257.340041] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci
Feb  9 23:35:32 sunfire kernel: [ 8270.244043] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci
Feb  9 23:35:50 sunfire kernel: [ 8287.876038] usb 3-6.2.4: reset full-speed USB device number 8 using ehci-pci

(我只列出了这么多,以显示它们的频率和一致性)。

我一直在寻找一种方法让系统“忽略”此类报告,基本上是因为我不关心它。原因是,这是一个带有两个 USB 端口的键盘,我从未连接过任何东西(尤其是在这个盒子上。我在与我的主盒子一起使用时连接了鼠标)。

我找到的大多数答案都与通常在搜索、特定应用程序或开发人员场景中过滤输出有关。

我找到了这个问题/答案(禁用记录到系统日志),但是我的(Ubuntu)系统上的配置指向位于其中的进一步配置文件/etc/rsyslog.d/,并且这些文件都没有任何远程建议(对我来说)如何忽略某些内容。

这确实引导我进一步搜索路线到(防止输出到 /var/log/syslog)然后继续http://www.rsyslog.com/(特别过滤器)但是当我开始使用它时,我收到了有关无效配置的错误,并且显然没有剔除我不需要的消息(上面的“短”部分)。

考虑到 rsyslog 似乎已停止(pid:754),那么我攻击了正确的系统,但我这样做是错误的。

任何帮助,将不胜感激。

最后补充:当恢复到默认设置并重新启动时,5 个配置错误中的 3 个仍然存在,这让我相信它们是无关的。

即,这些持续存在:

Feb 10 00:48:12 sunfire rsyslogd-2222: command 'KLogPermitNonKernelFacility' is currently not permitted - did you already set it via a RainerScript command (v6+ config)? [v8.16.0 try http://www.rsyslog.com/e/2222 ]
Feb 10 00:48:12 sunfire rsyslogd-2039: Could not open output pipe '/dev/xconsole':: No such file or directory [v8.16.0 try http://www.rsyslog.com/e/2039 ]
Feb 10 00:48:12 sunfire rsyslogd-2007: action 'action 10' suspended, next retry is Wed Feb 10 00:48:42 2016 [v8.16.0 try http://www.rsyslog.com/e/2007 ]

这些(预期)不再存在:

Feb 10 00:23:57 sunfire rsyslogd-2207: error during parsing file /etc/rsyslog.conf, on or before line 62: syntax error on token '' [v8.16.0 try http://www.rsyslog.com/e/2207 ]
Feb 10 00:23:57 sunfire rsyslogd-2207: CONFIG ERROR: could not interpret master config file '/etc/rsyslog.conf'. [v8.16.0 try http://www.rsyslog.com/e/2207 ]

答案1

使用

:msg, contains, "3-6.2.4: reset full" ~

波形符将丢弃包含字符串“3-6.2.4:重置完整”的消息。

您可能想使用类似下面的东西。我可以想象它会丢弃你真正想看到的东西的场景。下面的命令将查找专门来自内核且消息正文中包含“reset full-speed”的消息,然后告诉 syslog 丢弃这些消息。

if ($programname == 'kernel:') and ($msg contains "reset full-speed") then { *.* ~ }
& stop

相关内容