お世話になります。
FilebeatのS3 inputを使用し、JSONファイルの取込を検証しています。
FilebeatのアウトプットはElasticSearchで、ingest node(JSON processor)を使用しindex登録します。
▼filebeat.yml(抜粋)
filebeat.inputs:
- type: s3
enabled: true
queue_url: XXXX
access_key_id: XXXX
secret_access_key: XXXX
pipeline: "XXXX"
visibility_timeout: 600
expand_event_list_from_field: Records
▼ingest node(JSON processor)
{
"json": {
"field": "message",
"target_field": "json_target"
}
}
①1つの配列データ
▼jsonデータ
{
"Records": [
{
"eventVersion": "1.07",
"eventTime": "2019-11-14T00:51:00Z",
"awsRegion": "us-east-1",
"eventID": "EXAMPLE8-9621-4d00-b913-beca2EXAMPLE"
},
{
"eventVersion": "1.07",
"eventTime": "2019-11-14T00:52:00Z",
"awsRegion": "us-east-1",
"eventID": "EXAMPLEc-28be-486c-8928-49ce6EXAMPLE"
}
]
}
▼検証結果
indexは登録されたが、1番目の要素("eventTime": "2019-11-14T00:51:00Z")のみが登録された
➁ ①のデータに配列でない項目を追加
▼jsonデータ
{
"type": "aaa",
"id": "aaa--12345",
"spec_version": "2.0",
"Records": [
{
"eventVersion": "1.07",
"eventTime": "2019-11-14T00:51:00Z",
"awsRegion": "us-east-1",
"eventID": "EXAMPLE8-9621-4d00-b913-beca2EXAMPLE"
},
{
"eventVersion": "1.07",
"eventTime": "2019-11-14T00:52:00Z",
"awsRegion": "us-east-1",
"eventID": "EXAMPLEc-28be-486c-8928-49ce6EXAMPLE"
}
]
}
▼検証結果
filebeatで以下WARNが発生
#011WARN#011[s3]#011s3/input.go:529#011Decode json failed for 'aaa/bbb.json', skipping this file
③複数の配列データ
▼jsonデータ
{
"Records": [
{
"eventVersion": "1.07",
"eventTime": "2019-11-14T00:51:00Z",
"awsRegion": "us-east-1",
"eventID": "EXAMPLE8-9621-4d00-b913-beca2EXAMPLE"
},
{
"eventVersion": "1.07",
"eventTime": "2019-11-14T00:52:00Z",
"awsRegion": "us-east-1",
"eventID": "EXAMPLEc-28be-486c-8928-49ce6EXAMPLE"
}
],
"aaa": [
{
"aaa_name": "ccc",
"bbb_name": "ddd"
},
{
"aaa_name": "ccc",
"bbb_name": "eee"
},
{
"aaa_name": "ccc",
"bbb_name": "fff"
}
]
▼検証結果
indexは登録されたが、1番目の要素("eventTime": "2019-11-14T00:51:00Z")のみが登録された(①と同様)
▼ご質問
・①③に関して
配列は"expand_event_list_from_field"で指定した1番目の要素はindex登録されましたが、2番目以降の要素は登録されませんでした。登録するには何を設定すれば良いでしょうか?
また、"expand_event_list_from_field"の値は複数設定出来ない認識ですが
複数の配列を指定し、全ての要素をindex登録する方法はありますでしょうか?
・②に関して
配列でない項目を設定したところ、filebeatでWARNが発生しindex登録されませんでした。
WARNを発生させない方法はありますでしょうか?
お手数ですが、回答を頂けますと幸いです。
以上、宜しくお願い致します。