Rsyslogs输入文件的新配置格式

时间:2015-07-15 09:21:00

标签: linux logging rsyslog

我使用rsyslog配置集中式日志记录 我必须使用某种WildCard指定输入文件,但无法找到如何使其工作的任何示例,在官方文档的说明here中,具有确切描述的链接似乎已被破坏。
我尝试记录看起来像localhost_access_log.2015-07-15.txt的tomcat7-logfiles 文件中的日期每天更新。

我想得到的是某种input(type="imfile" ...)

我尝试过:

input(type="imfile" tag="access_log" statefile="tomcat-access-log"
       file="/var/log/tomcat7/localhost_access_log.*.txt")

但这不起作用,我不知道我做错了什么。

这是我的完整代码:

$ModLoad imfile
$PrivDropToGroup adm
$WorkDirectory /var/spool/rsyslog

# catalina.log
$InputFileName /var/log/tomcat7/catalina.log
$InputFileTag catalina-log
$InputFileStateFile stat-catalina-log
$InputFileSeverity info
$InputRunFileMonitor

# localhost_access_log.YYYY.MM.DD.txt
input(type="imfile" tag="access_log" statefile="tomcat-access-log" file="/var/log/tomcat7/localhost_access_log.*.txt")

catalina-logs正在按预期工作,但是我的输出中没有获得任何访问日志。

任何帮助将不胜感激,请提醒我,如果我做了一些完全错误的事情,或者是否有更好的方法来做到这一点。

1 个答案:

答案 0 :(得分:0)

它仅适用于rsyslog v8.5或更高版本(不是7),并且只有在使用inotify时才会看到here以获取解释需求的演示文稿。 我强制inotify(虽然这是默认值):

module(load="imfile"
     mode="inotify"
)

输入定义如下:

input(type="imfile"
     File="/file/path/*.log"
     Tag="taskproject:"
     Facility="local3"
)

在此之后,它应该正常工作