ELKスタックを実行するのが初めてです。私は、WebアプリケーションログをElasticsearchに送るようにLogstashを設定しました。私は、特定のログラインから解析されるuser_email
フィールドによって与えられた一意のユーザーの数を示す、木場の視覚化をセットアップしようとしています。Kibanaでカスタムフィールドを集計可能に設定するにはどうすればよいですか?
私はUnique Count集計を使用したいと確信していますが、集計できるフィールドリストにuser_email
を含めることはできません。ここで
filter {
if [type] == "wl-proxy-log" {
grok {
match => {
"message" => [
"(?<syslog_datetime>%{SYSLOGTIMESTAMP}\s+%{YEAR})\s+<%{INT:session_id}>\s+%{DATA:log_message}\s+license=%{WORD:license}\&user=(?<user_email>%{USERNAME}\@%{URIHOST})\&files=%{WORD:files}",
]
}
break_on_match => true
}
date {
match => [ "syslog_datetime", "MMM dd HH:mm:ss yyyy", "MMM d HH:mm:ss yyyy" ]
target => "@timestamp"
locale => "en_US"
timezone => "America/Los_Angeles"
}
kv {
source => "uri_params"
field_split => "&?"
}
}
}
output {
elasticsearch {
ssl => false
index => "wl-proxy"
manage_template => false
}
}
Elasticsearchの関連するマッピングです:ここで
は私のLogstash構成である{
"wl-proxy" : {
"mappings" : {
"wl-proxy-log" : {
"user_email" : {
"full_name" : "user_email",
"mapping" : {
"user_email" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 256
}
}
}
}
}
}
}
}
}
誰もが私が行方不明です何を教えてもらえますか?
ところで、私は次のバージョンではCentOSを実行しています:
- Elasticsearchバージョン:6.0.0、ビルドします8f0685b/2017-11-10T18:41:22.859Zを、JVM:1.8.0_151
- Logstash v.6.0.0
- Kibanaのv.6.0.0
ありがとう!