【问题标题】:Issue with multiple logs files forwarding with rsyslog?使用 rsyslog 转发多个日志文件的问题?
【发布时间】:2020-05-08 17:03:56
【问题描述】:

我有一个用例,我需要将多个日志文件转发到远程服务器。

    //Log Files

 1. /var/log/boot.log
 2. /path/to/tomcat/tomcat.log
 3. /path/to/app/app.log

我在/etc/rsyslog.d/添加了3个conf文件

 #/etc/rsyslog.d/boot.conf

    $ModLoad imfile
    $InputFilePollInterval 10
    $InputFileName /var/log/boot.log
    $InputFileTag boot-log
    $InputRunFileMonitor
    $InputFilePersistStateInterval 100

    #/etc/rsyslog.d/tomcat.conf

    $ModLoad imfile
    $InputFilePollInterval 10
    $InputFileName /path/to/tomcat.log
    $InputFileTag tomcat-log
    $InputRunFileMonitor
    $InputFilePersistStateInterval 100

    #/etc/rsyslog.d/app.conf

    $ModLoad imfile
    $InputFilePollInterval 10
    $InputFileName /path/to/app.log
    $InputFileTag app-log
    $InputRunFileMonitor
    $InputFilePersistStateInterval 100

为了包含这些文件,我添加了这一行 $IncludeConfig /etc/rsyslog.d/*.conf。 但是在/var/log/syslog 中,只是启动日志加起来,其余的配置被忽略了。

RsysLog 版本:8.1907.0(又名 2019.07)

【问题讨论】:

  • 如果您在标签上匹配(例如tomcat-log),您可能需要在设置中添加一个冒号,例如$InputFileTag tomcat-log:。此外,确保 rsyslogd 具有读取文件路径的权限。尝试rsyslogd -dn 获得大量调试输出,这可能会提供一些错误消息,说明为什么忽略行以及读取了哪些配置文件。

标签: linux ubuntu rsyslog


【解决方案1】:

也许答案应该在 rsyslog 的文档中:

$ModLoad imfile # needs to be done just once
# File 1
$InputFileName /path/to/file1
$InputFileTag tag1:
$InputFileStateFile stat-file1

$InputFileSeverity error
$InputFileFacility local7
$InputRunFileMonitor

# File 2
$InputFileName /path/to/file2
$InputFileTag tag2:

$InputFileStateFile stat-file2
$InputRunFileMonitor
# ... and so on ...
# check for new lines every 10 seconds $InputFilePollingInterval 10

这样,您已经重新定义了模块加载本身,应该在文件包含之前定义。

【讨论】:

    猜你喜欢
    • 2016-01-16
    • 2017-11-07
    • 1970-01-01
    • 2022-07-29
    • 1970-01-01
    • 1970-01-01
    • 2014-04-08
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多