Logging
CentOS 8 遠端日誌記錄在自定義日誌和 /var/log/messages 上
我正在嘗試為我的伺服器(所有 CentOS 8)配置遠端日誌主機。我在我的中央伺服器上添加了這個
if $fromhost-ip == '123.123.123.123' then /var/log/{{hostname}}.log
我也將我的客戶端配置更改為
*.* @@321.321.321.321:514/var/log/{{hostname}}.log
但是當我嘗試執行時:
sudo logger "test"
它同時登錄我的中央遠端伺服器上的 /var/log/hostname.log 和 /var/log/messages
它還淹沒了自定義日誌文件
pam_unix(sudo:session): session opened for user root by admin(uid=0) log message here pam_unix(sudo:session): session closed for user root
如何將我的日誌設置為僅發送到我的自定義日誌文件?以及如何過濾這些 pam 消息以使其不包括在內?
謝謝
完全允許記錄到多個位置,因此如果您沒有更改將大多數內容記錄到的預設配置
/var/log/messages
,那麼它們將繼續記錄在那裡。配置文件
/etc/rsyslog.conf
包含以下內容:# Log anything (except mail) of level info or higher. # Don't log private authentication messages! *.info;mail.none;authpriv.none;cron.none /var/log/messages
您可以添加一個基於屬性的過濾器,以便在您記錄一次消息後根據消息的各種屬性將其丟棄。例如:在記錄一次之後,基於屬性的過濾器將丟棄該消息,防止以後的配置記錄它(波浪號表示丟棄該消息而不進一步處理它):
:fromhost-ip, isequal, '123.123.123.123' /var/log/{{hostname}}.log :fromhost-ip, isequal, '123.123.123.123' ~
您收到 pam 消息,因為您使用
sudo
,而不是因為您執行logger
。每次跑步都會得到這些sudo
。如果您不想在日誌中看到它們,請不要執行sudo
. 無論如何都不需要使用sudo
來執行。logger