0

だから、私はファイルビートによって設定されているホスト名を持っています(そしてそれをつかむべき正規表現を書きました)が、以下は私が思うようにフィールドを追加していません..

grok{
  patterns_dir => "/config/patterns"
  match =>{ "beat.hostname" => ["%{INSTALLATION}-%{DOMAIN}-%{SERVICE}"] }
    add_field => { "[installation]" => "%{INSTALLATION}"}
    add_field => { "[domain]" => "%{DOMAIN}"}
    add_field => { "[service]" => "%{SERVICE}"}

 }  

必要なフィールドを追加するために、beat.hostname、hostname、host などにアクセスできないようです。現在のホスト名は BOS-LAP-MYNAME1 です。

どちらが一致する必要があります:

INSTALLATION [^-]{1,3}
DOMAIN (BOS|LAP)
SERVICE (MYNAME1|TEST|12345)

また、「ホスト」「ホスト名」などのフィールド名を試してみましたが、これらのフィールドはKibanaで使用できますが、役に立ちませんでした。

4

1 に答える 1

3

hostnameは下にネストされているため、ではなくbeatに対して一致させる必要があります。これらのフィールドをドキュメントに追加するには、match パラメータで の形式を使用します。[beat][hostname]beat.hostname%{PATTERN:fieldname}

filter {
  grok {
    patterns_dir => ["/config/patterns"]
    match => {
      "[beat][hostname]" => "%{INSTALLATION:installation}-%{DOMAIN:domain}-%{SERVICE:service}"
    }
  }
}
于 2016-08-30T15:00:54.760 に答える