Ubuntu

將 rsyslog 消息發送到遠端文件系統

  • July 17, 2022

我有一個正在執行的 Ubuntu 伺服器rsyslog和許多“客戶端”設備和應用程序向它發送日誌(通過各種 syslog 客戶端)。

我知道rsyslog將所有內容記錄到/var/log,但理想情況下,我可以將這些日誌“泵送”到另一台機器上的文件中。有效地將伺服器rsyslog作為客戶端發送日誌消息的集中位置,但允許我將日誌發送到網路驅動器或具有更大儲存能力的機器。

這可能嗎?我知道rsyslog有很多可以插入的模組,但我沒有看到任何允許您覆蓋/var/log以支持遠端文件位置的模組。有任何想法嗎?

為此,您可以設置rsyslog 伺服器rsyslog 客戶端。伺服器

$ModLoad imudp
$UDPServerRun 514

要使用 TCP 連接(速度較慢但更可靠),請搜尋並取消註釋以下行。

$ModLoad imtcp
$InputTCPServerRun 514

為遠端日誌設置模板:

$template RemoteLogs,"/var/log/%HOSTNAME%/%PROGRAMNAME%.log"
*.* ?RemoteLogs 
& ~

重新啟動系統日誌。

對於客戶:

*. *  @192.168.10.254:514

配置發送日誌的位置。

並且不要忘記重新啟動rsyslog

引用自:https://serverfault.com/questions/1105821