使用ELK對日誌進行分析,由於日誌並不規則,需要將一些無效的日誌過濾出去,並將剩餘日誌進行分析
因此使用到了logstash中的“drop”方法
配置文件的配置如下:
input {
file {
path => “/home/xxxxxx/logstash/xxxxx.log”
start_position => “beginning”
}
}
#作爲日誌輸入
filter {
if [type] == "INFO" {
drop { }
}
date {
match => [ "timestamp","yyyy-MM-dd HH:mm:ss" ]
locale => "cn"
}
#首先定義要過濾的日誌等級,然後定義時間戳的格式。
grok {
match => { "message" => "%{DATA:type}\ %{DATA:timestamp}\ %{DATA:referrer}\ %{DATA:inquire}\ - %{IP:click_ip}\ %{DATA:check_domain}"
}
add_field => { 'saltid' => "whoisd-192.168.13.1"}
add_tag => ["whois","whoisd","192.168.13.1"]
remove_field => ["message"]
}
}
output {
redis {
host => "xxx.xxx.xxx.xxx"
data_type => "list"
key => "logstash"
}
}
#日誌輸出的位置
需要將條件判斷語句放在grok前邊執行,纔不會報錯。