gpt4 book ai didi

rsyslog - 我的 rsyslog.conf 操作不会触发 Shell 执行

转载 作者:行者123 更新时间:2023-12-02 12:23:32 32 4
gpt4 key购买 nike

我使用的是 rsyslog 4.6.2 版本,并且 /etc/rsyslog.conf 中有以下几行:

$template InputToScript,"/home/user/%msg%"
if $msg contains "abcdefg" then ^touch;InputToScript

我做了一个kill -1 <pid>哪里<pid>rsyslogd 的 PID

然后我输入

logger "xxxabcdefgyyy"

我没有看到文件 /home/user/xxxabcdefgyyy创建。

我遗漏了什么吗?

最佳答案

当日志文件根据 https://github.com/rsyslog/rsyslog/issues/721logrotate 截断时,我看到了这个问题。 .

事实证明,imfile有一个用于处理截断的选项 - reopenOnTruncate - 否则,在截断的文件达到其原始大小之前,日志记录将不会继续

例如

input(type="imfile"
File="/var/log/secure"
Tag="secure-testing"
Ruleset="secure_ruleset_testing"
reopenOnTruncate="on")

您还可以根据https://www.rsyslog.com/how-to-use-debug-on-demand/启用rsyslog调试输出 --

export RSYSLOG_DEBUG="DebugOnDemand NoStdOut"
export RSYSLOG_DEBUGLOG=/somepath/example.log
/etc/rc.d/init.d/rsyslog stop
rsyslogd -n

在单独的 session 窗口中运行:

kill -USR1 `cat /var/run/rsyslogd.pid`

(确保 pid 文件存在或使用进程列表获取它)。调试日志记录将显示在指定的文件中。

关于rsyslog - 我的 rsyslog.conf 操作不会触发 Shell 执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14636361/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com