我正在尝试设置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
是正确的名称。
答案 0 :(得分:0)
syslog用户无权访问staging
目录,因此无法在那里写日志。