1. 程式人生 > >日誌管理(二)

日誌管理(二)

日誌

syslog-ng
是另外一種流行的日誌管理的解決方案,它是一個商業軟件,包括收費版和開源版。

步驟一:啟用EPEL源(略);

步驟二:刪除系統自帶的rsyslog並yum安裝syslog-ng
yum remove rsyslog
yum install syslog-ng

步驟三:
syslog-ng服務端配置:/etc/syslog-ng/syslog-ng.conf

全局配置:options
options {
flush_lines (0); #設置一次發送多少條日誌,默認為0即收到日誌就發送
time_reopen (10);
log_fifo_size (1000); #單條日誌大小
long_hostnames (off);

use_dns (no); #不依賴DNS服務器
use_fqdn (no);
create_dirs (yes);#存儲日誌的位置
keep_hostname (yes);
};

設置日誌來源、端口、協議、最大連接數,以及存儲的位置。
source demo_source {
tcp(ip(0.0.0.0) port(514) max-connections(1000));
};
destination d_central { file("/var/log/central/$HOST/$PROGRAM"); };

設置過濾器filter(可選):
filter f_loadbalance { host(lb.example.com) and match("Deny"value( "MESSAHE" )); };

#將負載均衡器中含有Deny字樣的日誌過濾出來。

設置規則,將demo_source中的日誌存儲到d_central中:
log { source(demo_source); destination(d_central); };

保存並重啟syslog-ng服務
/etc/init.d/syslog-ng restart

syslog-ng客戶端配置:
destination d_syslog { tcp("syslog-ng",port(514)); };
log { source(s_sys); destination(d_syslog); };

重啟syslog-ng服務
/etc/init.d/syslog-ng restart

常見的syslog程序不止rsyslog和syslog-ng,還有老牌的syslog、facebook開源的scribe等。但是在性能和開發進度上,rsyslog和syslog-ng優勢明顯。而且rsyslog作為centos默認的日誌程序,配置簡單,故為首選。

日誌管理(二)