2017-12-15 15 views
1

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

ありがとう!

答えて

0

私はそれを理解しました。構成は正しく、AFAICTでした。問題は、私が単にKibanaのUIのインデックスのフィールドのリストをリフレッシュしていないということでした。

管理 - >インデックスパターン - > [更新フィールドリスト(リフレッシュアイコン)

ことをやった後、フィールドが集約用語のリストに表示されて始めた、と私は必要な視覚化を作成することができました。

関連する問題