2016-10-26 7 views
1

私はlogstashインスタンスにfilebeat経由で入ってくるホスト名フィールドを、分析フィールドとして扱われているElasticSearchに渡しています。フィールド自体が全体として報告される必要があるので、それは問題を引き起こしています。フィールドを分析から非分析に簡単に変更する方法

例:多くのリクエストがPRD、awshst、Xにそれらを分割するのではなく、への「PRD-awshst-X-01」に来る方法を知って、

01.誰もがそれができます。これを行うための軽量な方法を持っていますビジュアライゼーションに使用できますか?

おかげで、あなたのポストのタイトルに基づいて

答えて

0

は、あなたはすでにあなたがnot_analyzedするフィールドのマッピングを変更する必要があることを知っています。

将来のインデックスにこのマッピングが含まれるようにテンプレートを設定する必要があります。

既存のデータを保持する場合は、新しいマッピングで新しいインデックスに再インデックスする必要があります。

デフォルトのログテンプレートを使用している場合、木版の視覚化で使用できるnot_analyzed ".raw"フィールドが作成されている可能性があります。

+0

あなたの最後の行に記載されていることをどうすればできますか?私は前に分析されていないフィールドを作る必要はなかったし、それはかなり複雑なようだ。 –

+0

IIRC、Kibanaは、[Discover]タブで.rawフィールドを表示せず、ビジュアライゼーションをビルドするときに表示します。また、elasticsearchからインデックスのマッピングをカールし、そこにあるかどうかを確認することもできます。 –

0

Filebeatで提供されるindex templateは、ホスト名フィールドをnot_analyzedとして設定します。

Filebeatで手動でinstall the index templateを指定してから、docsの説明に従ってFilebeatインデックスにデータを書き込むようにLogstashを設定する必要があります。

これはelasticsearchの出力のようなものです。 Logstashで他のデータを処理している場合は、この出力を介してビートイベントのみが送信されるように、この出力の周りに条件を追加することができます。

output { 
    elasticsearch { 
    hosts => "localhost:9200" 
    manage_template => false 
    index => "%{[@metadata][beat]}-%{+YYYY.MM.dd}" 
    document_type => "%{[@metadata][type]}" 
    } 
} 
1

特定のフィールドについて、分析からnot_analyzedへのマッピングを更新する必要があります。

PUT/ mapping url/ 
{ 
    property:{ 
      field:{ 
       text:"not_analyzed" 
       } 
      } 
} 

プロパティを更新した後、マッピングURLにGETメソッドを使用してマッピングに反映されていることを確認してください。

関連する問題