使用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前边执行,才不会报错。