Im有一個ELK Stack + Filebeat的問題。Elasticsearch Logstash Filebeat映射
Filebeat發送類似Apache的日誌到Logstash,它應該解析這些行。 Elasticsearch應該將分割數據存儲在字段中,以便我可以使用Kibana將它們可視化。
問題: Elasticsearch接收日誌,但將它們存儲在單個「消息」字段中。
希望的解決方案:
輸入:
10.0.0.1 some.hostname.at - [27 /月/ 2017:23:59:59 0200]
ES:
「IP」: 「10.0.0.1」
「主機名」: 「some.hostname.at」
「時間戳」:「2 7月/ 6/2017年:23:59:59 +0200"
我logstash配置:
input {
beats {
port => 5044
}
}
filter {
if [type] == "web-apache" {
grok {
patterns_dir => ["./patterns"]
match => { "message" => "IP: %{IPV4:client_ip}, Hostname: %{HOSTNAME:hostname}, - \[timestamp: %{HTTPDATE:timestamp}\]" }
break_on_match => false
remove_field => [ "message" ]
}
date {
locale => "en"
timezone => "Europe/Vienna"
match => [ "timestamp", "dd/MMM/yyyy:HH:mm:ss Z" ]
}
useragent {
source => "agent"
prefix => "browser_"
}
}
}
output {
stdout {
codec => rubydebug
}
elasticsearch {
hosts => ["localhost:9200"]
index => "test1"
document_type => "accessAPI"
}
}
我Elasticsearch發現輸出:
我希望有任何ELK專家周圍可以幫助我。 預先感謝您, Matthias