From b100f1850564cdc22bbac34660a6bc0039eb57cd Mon Sep 17 00:00:00 2001 From: gameldar Date: Fri, 23 Dec 2016 13:48:44 +0800 Subject: [PATCH] Fix the ingest attachment array examples Fix up the ingest attachment array handling example so they are full examples and validated by the build system correctly. --- docs/plugins/ingest-attachment.asciidoc | 73 +++++++++++++++++++++++-- 1 file changed, 67 insertions(+), 6 deletions(-) diff --git a/docs/plugins/ingest-attachment.asciidoc b/docs/plugins/ingest-attachment.asciidoc index 1471fbdae0d..3aae6c0e146 100644 --- a/docs/plugins/ingest-attachment.asciidoc +++ b/docs/plugins/ingest-attachment.asciidoc @@ -131,6 +131,7 @@ For example, given the following source: ] } -------------------------------------------------- +// NOTCONSOLE In this case, we want to process the data field in each element of the attachments field and insert @@ -139,18 +140,78 @@ processor is used: [source,js] -------------------------------------------------- +PUT _ingest/pipeline/attachment { - "foreach": { - "field": "attachments", - "processor": { - "attachment": { - "target_field": "_ingest._value.attachment", - "field": "_ingest._value.data" + "description" : "Extract attachment information from arrays", + "processors" : [ + { + "foreach": { + "field": "attachments", + "processor": { + "attachment": { + "target_field": "_ingest._value.attachment", + "field": "_ingest._value.data" + } + } } } + ] +} +PUT my_index/my_type/my_id?pipeline=attachment +{ + "attachments" : [ + { + "filename" : "ipsum.txt", + "data" : "dGhpcyBpcwpqdXN0IHNvbWUgdGV4dAo=" + }, + { + "filename" : "test.txt", + "data" : "VGhpcyBpcyBhIHRlc3QK" + } + ] +} +GET my_index/my_type/my_id +-------------------------------------------------- +// CONSOLE + +Returns this: +[source,js] +-------------------------------------------------- +{ + "_index" : "my_index", + "_type" : "my_type", + "_id" : "my_id", + "_version" : 1, + "found" : true, + "_source" : { + "attachments" : [ + { + "filename" : "ipsum.txt", + "data" : "dGhpcyBpcwpqdXN0IHNvbWUgdGV4dAo=", + "attachment" : { + "content_type" : "text/plain; charset=ISO-8859-1", + "language" : "en", + "content" : "this is\njust some text", + "content_length" : 24 + } + }, + { + "filename" : "test.txt", + "data" : "VGhpcyBpcyBhIHRlc3QK", + "attachment" : { + "content_type" : "text/plain; charset=ISO-8859-1", + "language" : "en", + "content" : "This is a test", + "content_length" : 16 + } + } + ] } } -------------------------------------------------- +// TESTRESPONSE + + Note that the `target_field` needs to be set, otherwise the default value is used which is a top level field `attachment`. The properties on this top level field will contain the value of the