2017-02-21 5 views
0

私はfilebeat-5.2、logstash-5.2およびAWS Elastic Search Service-5.1を使用しています。 は、ここで私は私の既存のGROKパターンがlogstashELasticsearch Ingestion APIのlogstash "mutate"とは何ですか?

grok{ 
match => "\[%{DAY:day} %{MONTH:month} %{MONTHDAY:monthday} %{TIME:time} %{YEAR:year}\]" 
} 
mutate { 
       add_field => { 
           "timestamp" => "\[%{DAY:day} %{MONTH:month} %{MONTHDAY:monthday} %{TIME:time} %{YEAR:year}\]" 
     } 
    } 

で定義されていると私は摂取APIの同等のGROKプロセッサを定義しようとしています。私は、タイムスタンプのフィールドを抽出するために摂取APIにのmutateを定義することができるように

PUT _ingest/pipeline/pipe_celery_log 
    { 
     "processors": [ 
     { 
    "patterns": ["\\[%{DAY:day} %{MONTH:month} %{MONTHDAY:monthday} %{TIME:time} %{YEAR:year}\\]"] 
.................... 

いずれかの方法があります。

ここでは、Ingestion APIの新機能を紹介します。もし誰かがこれを解決できたら助けてください。

答えて

1

お探しのプロセッサはsetです。

それは次のようになります。

"set" : { 
    "field" : "fieldname" 
    "value" : "fielvalue" 
} 

あなたは二重の中括弧でフィールドにアクセスすることができます

{{fieldname}} 

setプロセッサドキュメントhereをチェックしてください。

+0

'{ "セット":{ "フィールド": "タイムスタンプ"、 "値": "{{MONTHDAY}}/{{月}}/{{年}}:{{時間}}" } '。これは私のElastic Search 5.1.2をローカルに設定することによって実行されると、やっかいなことでした。私の悪いのは、AWSの管理Elastic Searchでサポートされていないと私は "理由"のようなエラーが発生しています: "java.lang.IllegalArgumentException:script_langサポートされていない[ひげ]"、 "ヘッダー":{ "processor_type" "この機能の不一致に関するコメントと私はこれを克服することができますか? –

+0

彼らはすべてのインジェストプロセッサをサポートしていないようですが、それについて私を引用しません。 [ここ](http://docs.aws.amazon.com/elasticsearch-service/latest/developerguide/aes-limits.html)を参照してください。 – Fairy

関連する問題