Bash
讓 bash 腳本將輸出發送到 systemd 日誌的簡單但正確的方法?
我只是在我的 bash 腳本的頂部粘貼了這樣的東西。這仍然適用於 systemd。(我用了很久,也不是很懂,就是好用,所以就用了。)
exec 5> >(logger -t $0) BASH_XTRACEFD="5" PS4='$LINENO: ' set -x
即使使用 systemd,上述命令也會在 journalctl 中給出預期的輸出。但是,似乎我應該改用這樣的東西。
systemd-cat -t $0
我應該如何在 systemd 下更改我目前的日誌記錄命令?
(我正在尋找同樣簡單的解決方案,我可以在其中粘貼幾行並在日誌中獲得一些輸出。)
我會堅持
logger
:它適用於任何符合標準的日誌記錄系統,包括您發現的 systemd 的日誌。直接使用systemd-cat
只會使您的腳本特定於 systemd,而無需添加任何內容;事實上,modernlogger
更加靈活,並且比systemd-cat
它自己提供了對 systemd 特定功能的更好支持。