請到 /etc/logstash/conf.d 目錄下新增第一個設定檔,名稱可以任意定,例如 apache_access.conf。主要分成三個段落
- input : 設定輸入的類型、位置等資訊
- 以檔案 file 的形式輸入
- 指定檔案位置
- filter : 設定解析的方式、衍生欄位等
- logstash已經有內建解析access log的方式,請直接用 grok 的設定。
- output : 輸出的位置
- 本範例直接輸出到 elasticsearch 中
- 若您的elasticsearch有指定 cluster名稱及node名稱,請記得設定在這邊,以免找不到服務。
input { file { path => "/var/log/httpd/access_log" type => "apache" # a type to identify those logs (will need this later) } } filter { if [type] == "apache" { # this is where we use the type from the input section grok { match => [ "message", "%{COMBINEDAPACHELOG}" ] } } } output { elasticsearch { host => "localhost" cluster => "LogCluster" node_name => "LogMaster" } }設定完成後,還要修改 /etc/init.d/logstash ,將啟動的使用者及群組改為root,以免權限不足沒辦法讀取access_log。
LS_USER=root
LS_GROUP=root
最後重新啟動logstash服務
# service logstash restart Killing logstash (pid 1993) with SIGTERM Waiting logstash (pid 1993) to die... Waiting logstash (pid 1993) to die... logstash stopped. logstash started. #
然後開啟瀏覽器 http://<your_ip_address 應該就可以看到了。
沒有留言:
張貼留言