我已经写了一个通过rsyslog写入消息的python应用程序。 我已经configurationrsyslog写入到/var/log/my_custom_log.log的自定义日志文件,我的条目很好。
我的默认syslog.conf是未修改的。 我的/etc/rsyslog.d/00-myrules.conf如下:
:msg, contains, "Transmission" /var/log/transmission.log & ~
我也不明白'最后'是什么,但是如果没有它,似乎也行不通。
我只需/home/me/logs/my_tests.log日志写入/home/me/logs/my_tests.log 。 当我testing我的应用程序时,我需要确保某些事情被写入日志一定次数。 我之前做的是把我的信息写到我的主目录中的一个纯文本文件,检查这个文件是否正确,然后删除每个testing。 我现在需要做同样的事情,但与rsyslog 。 我以我的用户身份运行我的testing。
我想要正常的日志写入/var/log/my_app_log.log ,没关系。
ps aux | grep "rsyslog" ps aux | grep "rsyslog" ,它会返回/usr/sbin/rsyslogd -n在根目录下运行,如果我在这里错误的话,应该能够写入我的主目录下的子目录,不pipe是谁拥有它。 编辑 :经过进一步的讨论,我们已经决定,在/var/log以外的日志是愚蠢的。 毕竟,这就是它的存在。
有了这篇文章的帮助 ,我发现运行ls -Z显示了SELinux上下文。 正如海报build议,我从/var/logs上下文复制到我家的日志目录中,并得到所需的结果。
但是,我意识到这不是第一个联系问题所接受的答案所描述的理想,因为它不是防弹/时间的。 不幸的是,我不明白SELinux足以详细说明这一点,所使用的方法将适用于我的小环境。