0

私はキバナでタイルマップを作成しようとしています。私のconfファイルlogstashは正しく動作し、Kibanaがタイルマップをプロットするのに必要なすべてを生成します。これは私のconf logstashです:ELKスタックでタイルマップをプロットする

input { 
    file { 
      path => "/home/ec2-user/part.csv" 
      start_position => "beginning" 
      sincedb_path => "/dev/null" 
    } 
} 

filter { 

    csv { 
      separator => "," 
      columns => ["kilo_bytes_total","ip","session_number","request_number_total","duration_minutes_total","referer_list","filter_match_count_avg","request_number_avg","duration_minutes_avg","kilo_bytes_avg","segment_duration_avg","req_by_minute_avg","segment_mix_rank_avg","offset_avg_avg","offset_std_avg","extrem_interval_count_avg","pf0_avg","pf1_avg","pf2_avg","pf3_avg","pf4_avg","code_0_avg","code_1_avg","code_2_avg","code_3_avg","code_4_avg","code_5_avg","volume_classification_filter_avg","code_classification_filter_avg","profiles_classification_filter_avg","strange_classification_filter_avg"] 

    } 



    geoip { 

     source => "ip" 
     database => "/home/ec2-user/logstash-5.2.0/GeoLite2-City.mmdb" 
     target => "geoip" 
     add_field => [ "[geoip][coordinates]", "%{[geoip][longitude]}" ] 
     add_field => [ "[geoip][coordinates]", "%{[geoip][latitude]}" ] 
     add_tag => "geoip" 

    } 


    mutate { 

    convert => [ "[geoip][coordinates]", "float"] 

    } 

} 




output { 

    elasticsearch { 

    index => "geotrafficip" 
    } 
} 

そして、これはそれが生成するものである:

enter image description here

それはクールに見えます。私のタイルマップを作成しようとすると、私はこのメッセージを持っている:

enter image description here

何をしますか? 私はdinamycテンプレートを使用する可能性をどこかに追加しなければならないと思われます。テンプレートを作成して、それをファイルのログ・スタッシュに追加する必要がありますか? 誰かからフィードバックをいただけますか?どうも !

答えて

1

あなたのインデックスのKibana設定を見ると、マップ上に何かを得るために少なくとも1つのフィールドが表示され、タイプがgeo_pointである必要があります。

geo_pointフィールドがない場合は、geoip.coordinatesフィールドの適切なマッピングを設定した後にデータのインデックスを再作成する必要があります。例:https://stackoverflow.com/a/42004303/2785358

比較的新しいバージョンのElasticsearch(2.3以降)を使用している場合は、比較的簡単にデータのインデックスを作成できます。正しいマッピングで新しいインデックスを作成し、再インデックスAPIを使用して新しいインデックスにデータをコピーし、元のインデックスを削除して元の名前に戻す必要があります。

0

geoipフィルタを間違えていて、経度と緯度を浮動小数点に変換しようとしています。 mutateフィルタを取り除き、geoipフィルタをこれに変更します。

geoip { 
    source => "ip" 
    fields => ["latitude","longitude"] 
    add_tag => "geoip" 
} 

これにより、適切なフィールドが作成されます。必要なGeoJSONオブジェクト。

関連する問題