logstash結合rsyslog,收集系統日誌,logstashrsyslog
rsyslog是日誌收集工具,現在很多Linux都內建rsyslog,用其替換掉syslog。如何安裝rsyslog就不講了,大概講下原理,然後講logstash的相關配置。
rsyslog本身有一個設定檔 /etc/rsyslog.conf,裡面定義了記錄檔,以及相應儲存的地址,以下述語句為例:
local7.* /var/log/boot.log
他表明所有以local17.開頭的記錄檔都記錄到 /var/log/boot.log。
上面提到它是日誌收集工具,體現在,不僅僅可以收集原生日誌,還可以收集其他機器的日誌。那麼如何讓它收集呢?
去掉/ect/rsyslog.conf下面兩行的注釋:
#$ModLoad imudp#$UDPServerRun 514
然後啟動時,添加-r,這樣,它就用514連接埠監聽。當然,這和我們這裡logstash沒有什麼必然的關係。
下面講logstash的配置:
很簡單,設定檔的input加入syslog:
syslog{ port = "5514"}
logstash是配置好了,但rsyslog怎麼知道要發給你呢?也很簡單,在/etc/rsyslog.conf中加入如下一行:
*.* @@ip:5514
注意,@@和前面的*,要用Tab分隔。Ok。
如果你想檢驗的話,在shell中輸入如下命令:
logger "Hello world!"
logstash能接收到就表示Ok了。
在虛擬機器下基於centos用rsyslog實現Log Service管理系統的搭建?
www.tuicool.com/articles/YR7nYj
www.linuxidc.com/Linux/2013-06/86163.htm
hi.baidu.com/...0f2ed8
內建的rsyslog 怎啟用日誌向mysql功可以支援
你是想把log日誌內容寫入資料庫嗎?
如果是想把mysql的log寫入rsyslog啟動時加參數--syslog