我有程序日志到Syslog,我想把这些消息分成不同的文件。
我希望MyApp生成的所有消息都转到/var/log/my_app.log,而任何warn或更严重的消息也要转到/var/log/my_app.err。
我不希望这些消息像现在一样以/var/log/syslog结束。
我创建了一个新的rsyslog conf文件/etc/rsyslog.d/10-my_app.conf,其中有:
if $programname == 'MyApp'
then
{
if $pri <= 4
then
{
/var/log/my_app.err
}
/var/log/my_app.log
& stop
}但它只起了部分作用。所有的消息都在my_app.log中结束,一半的消息仍然出现在syslog中& my_app.err中什么也没有出现
发布于 2019-07-02 07:19:36
我找到了一个解决办法:
if $programname == 'MyApp'
then
{
*.warning /var/log/my_app.err
*.* /var/log/my_app.log
& stop
}问题的一半是,我的配置文件是在另一个文件之后加载的,该文件正在将我的行记录到/var/log/syslog,然后我才有机会删除它们,所以我需要更改一些文件名来解决这个问题。
https://stackoverflow.com/questions/56831270
复制相似问题