San*_*hal 7 bash logs io-redirection syslog
我有一个 Node.js 服务器,它被永久监控。Forever 生成三个日志文件:服务器 STDOUT、STDERR 和 Forever 本身的日志。
$ forever -l forever.log -o out.log -e err.log app.js
Run Code Online (Sandbox Code Playgroud)
但不是记录到日志文件,我想将所有内容都记录到 syslog,可以选择添加某种前缀,以便我的 syslog 处理服务器可以将所有内容整理出来。
在 StackOverflow 上,有人建议这可以使用一些 bash 包装器来处理,并建议我在这里问。那么,我如何将这些日志放入 syslog 而不是文件中?
bsd*_*bsd 13
您是否尝试过将记录器与进程替换一起使用?
$ forever -a >(logger -t forever) -o >(logger -t app.js) -e >(logger -t app.js) app.js
Run Code Online (Sandbox Code Playgroud)
您可以使用logger -p
开关来指定日志级别、警告、信息、错误等,以及其他记录器开关。在forever -l
需要更换时到forever -a
。
我用永久安装的一些示例文件尝试了这个,并且它起作用了。默认情况下,每个发行版可能会记录到不同的日志文件,您必须尝试使用记录器开关。