linux - rsyslog "if"语句不起作用

标签 linux rsyslog

我的 /etc/rsyslog.conf 中有以下语句:

# This one is the template to generate the log filename dynamically
$template DynFile,"/var/log/proxy/%$year%/%$month%/%$now%.log"

if $fromhost-ip == '192.168.1.1' then *.* ?DynFile

这个想法是将本地和远程日志拆分为单独的目录和文件。

rsyslog 守护进程启动时没有任何错误,但未创建预期的日志。如果我用简单的 *.* ?DynFile 替换“if”语句,则会填充日志,但当然它们不会被分割。

最佳答案

就您而言,我认为这只是一个语法错误:

$template DynFile,"/var/log/proxy/%$year%/%$month%/%$now%.log"
if $fromhost-ip == '127.0.0.1' then ?DynFile

** 我使用“127.0.0.1”作为本地主机

关于linux - rsyslog "if"语句不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18217594/

相关文章:

mysql - 如何强制 rsyslog ommysql 使用 utf8?

java - 路径中的 Ant 大写与小写字符

linux - 如何禁用 Qt 在 Linux 上捕获小部件焦点导航箭头键的行为

linux - 用冒号分隔子列表

linux - 使用 rsyslog 捕获 journald 属性

Android:如何集成Log4j2?

c - syslog.conf 配置仅登录到自定义日志文件,

linux - grep 命令在每次匹配后添加结束行

c++ - Eclipse 中对 `main' C++ 错误的 undefined reference

linux - 在 rsyslog 配置中设置日志文件的权限