Skip to content

Commit

Permalink
INGEST: Document Pipeline Processor
Browse files Browse the repository at this point in the history
* Added documentation for Pipeline Processor
* Relates elastic#33188
  • Loading branch information
original-brownbear committed Sep 5, 2018
1 parent 4156cc3 commit c2aab8c
Showing 1 changed file with 102 additions and 0 deletions.
102 changes: 102 additions & 0 deletions docs/reference/ingest/ingest-node.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -2075,6 +2075,108 @@ Converts a string to its lowercase equivalent.
--------------------------------------------------
// NOTCONSOLE

[[pipeline-processor]]
=== Pipeline Processor
Executes another pipeline.

[[pipeline-options]]
.Pipeline Options
[options="header"]
|======
| Name | Required | Default | Description
| `pipeline` | yes | - | The name of the pipeline to execute
|======

[source,js]
--------------------------------------------------
{
"pipeline": {
"pipeline": "inner-pipeline"
}
}
--------------------------------------------------
// NOTCONSOLE

An example of using this processor for nesting pipelines would be:

Define an inner pipeline:

[source,js]
--------------------------------------------------
PUT _ingest/pipeline/inner-pipeline
{
"description" : "inner pipeline",
"processors" : [
{
"set" : {
"field": "inner_pipeline_set",
"value": "inner"
}
}
]
}
--------------------------------------------------
// CONSOLE

Define another pipeline that uses the previously defined inner pipeline:

[source,js]
--------------------------------------------------
PUT _ingest/pipeline/outer-pipeline
{
"description" : "outer pipeline",
"processors" : [
{
"pipeline" : {
"pipeline": "inner-pipeline"
}
},
{
"set" : {
"field": "outer_pipeline_set",
"value": "outer"
}
}
]
}
--------------------------------------------------
// CONSOLE
// TEST[continued]

Now indexing a document while applying the outer pipeline will see the inner pipeline executed
from the outer pipeline:

[source,js]
--------------------------------------------------
POST /myindex/1?pipeline=outer-pipeline
{
"field": "value"
}
--------------------------------------------------
// CONSOLE
// TEST[continued]

Response from the index request:

[source,js]
--------------------------------------------------
{
"_index": "myindex",
"_type": "_doc",
"_id": "1",
"_version": 1,
"result": "created",
"_shards": {
"total": 2,
"successful": 1,
"failed": 0
},
"_seq_no": 0,
"_primary_term": 1,
}
--------------------------------------------------
// TESTRESPONSE

[[remove-processor]]
=== Remove Processor
Removes existing fields. If one field doesn't exist, an exception will be thrown.
Expand Down

0 comments on commit c2aab8c

Please sign in to comment.