linux – rsyslogd:有什么方法可以绕过当地设施的数量?

linux – rsyslogd:有什么方法可以绕过当地设施的数量?,第1张

概述我们有大约9-10个设备,我们希望将日志记录定向到我们的rsyslog服务器.但是,只有8个当地设施(0-7).我们怎样才能解决这个限制? 在邮件中记录应用程序名称.过滤应用程序名称而不是设施.如果您的应用程序没有直接生成系统日志消息,您可以应用输出过滤器(例如,sed)按摩事物以查找您想要的方式. 查看filter conditions上的Rsyslog文档,了解如何配置此行为.根据该页面中的信 我们有大约9-10个设备,我们希望将日志记录定向到我们的rsyslog服务器.但是,只有8个当地设施(0-7).我们怎样才能解决这个限制?解决方法 在邮件中记录应用程序名称.过滤应用程序名称而不是设施.如果您的应用程序没有直接生成系统日志消息,您可以应用输出过滤器(例如,sed)按摩事物以查找您想要的方式.

查看filter conditions上的Rsyslog文档,了解如何配置此行为.根据该页面中的信息,这里是一个如何将以“application1”字符串开头的消息放入/ var / log / application1的示例:

if $msg startswith 'application1' then /var/log/application1

如果您的应用程序正确设置,您还可以显式过滤程序名称:

if $programname == 'application1' then /var/log/application1

您可以在rsyslog.conf中执行各种复杂的过滤;阅读文档以获取更多信息和示例.

编辑:rsyslog可以使用模板为每个服务器创建单独的文件.类似下面的内容应该将所有日志消息放入每个主机名的单独文件中. (这是从联机帮助页中解除的.)

$template Dynfile,"/var/log/system-%HOSTname%.log*.*                             ?Dynfile

以下内容类似,但不记录调试消息.它还使用连接主机名而不是消息主机名. (这是基于我开发的用于记录Obi100输出的内容.)

$template HostFormat,"%timegenerated% %fromhost% %syslogtag%%msg:::sp-if-no-1st-sp%%msg:::drop-last-lf%\n"$template Hostfile,"/var/log/system-%fromhost%.logif $syslogseverity < 7 then -Hostfile;HostFormat

如果您有更复杂的需求,或者想了解上述内容,请阅读联机帮助页和文档.

总结

以上是内存溢出为你收集整理的linux – rsyslogd:有什么方法可以绕过当地设施的数量?全部内容,希望文章能够帮你解决linux – rsyslogd:有什么方法可以绕过当地设施的数量?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/1043193.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-24
下一篇 2022-05-24

发表评论

登录后才能评论

评论列表(0条)

保存