使用 Syslog 路由到文件的问题
Issue with routing to files w/ Syslog
我正在尝试设置系统日志,以便我们可以让我们的应用程序在不同的环境中记录到不同的文件。
我们的开发环境一切正常,但我们的临时环境没有日志。
这是我们配置文件的片段,01-app.conf
,
# staging
if ($programname == "api-staging") then {
action(type="omfile" file="/var/log/staging/api.log")
stop
}
# development
if ($programname == "api-development") then {
action(type="omfile" file="/var/log/development/api.log")
stop
}
user.* /var/log/other/user.log
stop
我的配置文件以 01
开头,因为如果应用程序日志在我们自己之前尊重 default
配置,则会转到多个位置。
鉴于开发日志已正确路由并且从暂存规则中删除 stop
会将日志发送到 /var/log/other/user.log
,我非常有信心将日志发送到盒子本身,但不知何故是路由问题。
来自 /var/log/other/user.log
的示例日志应该在 /var/log/staging/api.log
中是这样的:
Sep 14 17:28:33 RD0003FF77E220 api-staging[58340]: "..."
,所以我知道我在配置中寻找的 programname
是正确的名称。
syslog 用户无权访问 staging
目录,因此无法将日志写入该目录。
我正在尝试设置系统日志,以便我们可以让我们的应用程序在不同的环境中记录到不同的文件。
我们的开发环境一切正常,但我们的临时环境没有日志。
这是我们配置文件的片段,01-app.conf
,
# staging
if ($programname == "api-staging") then {
action(type="omfile" file="/var/log/staging/api.log")
stop
}
# development
if ($programname == "api-development") then {
action(type="omfile" file="/var/log/development/api.log")
stop
}
user.* /var/log/other/user.log
stop
我的配置文件以 01
开头,因为如果应用程序日志在我们自己之前尊重 default
配置,则会转到多个位置。
鉴于开发日志已正确路由并且从暂存规则中删除 stop
会将日志发送到 /var/log/other/user.log
,我非常有信心将日志发送到盒子本身,但不知何故是路由问题。
来自 /var/log/other/user.log
的示例日志应该在 /var/log/staging/api.log
中是这样的:
Sep 14 17:28:33 RD0003FF77E220 api-staging[58340]: "..."
,所以我知道我在配置中寻找的 programname
是正确的名称。
syslog 用户无权访问 staging
目录,因此无法将日志写入该目录。