由於測試的機台,常常自動REBOOT,所以這時候出了問題,都不知道問題點,這時候syslogd -r 的功能便有用了。由於要記錄到伺服器上,所以比然要先準備一台Linux Server。就是公司的舊筆電可以派上用場:
一、Syslog伺服器端的設定
1. 預設syslog是不開啟網路功能,若要啟用這個功能,必須在啟動syslogd時加上參數 -r 才行。
修改/etc/systemd/system/syslog.service 這個設定檔即可
# vi /etc/syslog.conf
修改成下面這個參數
SYSLOGD_OPTIONS=”-m 0 -r”
2. 確定/etc/service是否有syslog的設定,若沒有這個設定就沒辦法接受或傳送記錄,甚至無法啟動syslog囉。
# vi /etc/service
請確定有下面這個設定,沒有的話請自行加上
syslog 514/udp
3. 重新啟動syslog
# /sbin/service syslog restart
4. 檢查syslog是否監聽UDP 514
# netstat -tulp
udp 0 0 0.0.0.0:514 0.0.0.0:* 3830/syslogd
就是有開了。
二、syslog 機台端的設定
客戶端的設定還滿簡單的,只要稍微修改syslog.conf即可
# vi /etc/syslog.conf
把原本寫在/var/log/messages裡的記錄送到位於192.168.1.10的syslogd
只要將/var/log/messages改為@hostname就可以了
*.info;mail.none;authpriv.none;cron.none @192.168.1.10
若你者機可以解析主機名稱,當然你也可以使用主機名稱代替IP
若沒有DNS也可以寫死在/etc/hosts裡
mail.* @syslog.myserver.com
重啟syslogd後,你可以到伺服器端的/var/log/messages看看是否有將記錄轉送過來
# service syslog restart
特別注意事項
在設定syslog時要特別注意不要造成syslog-loops的迴圈情況,很快的你會發現你的硬碟被一堆相同的訊息塞滿。
沒有留言:
張貼留言