mirror of
https://github.com/elastic/elasticsearch.git
synced 2025-06-30 02:13:33 -04:00
This processor simply causes any remaining processors in the pipeline to be skipped. It will normally be executed conditionally using the `if` option. (If this pipeline is being called from another pipeline, the calling pipeline is *not* terminated.) For example, this: ``` POST /_ingest/pipeline/_simulate { "pipeline": { "description": "Appends just 'before' to the steps field if the number field is present, or both 'before' and 'after' if not", "processors": [ { "append": { "field": "steps", "value": "before" } }, { "terminate": { "if": "ctx.error != null" } }, { "append": { "field": "steps", "value": "after" } } ] }, "docs": [ { "_index": "index", "_id": "doc1", "_source": { "name": "okay", "steps": [] } }, { "_index": "index", "_id": "doc2", "_source": { "name": "bad", "error": "oh no", "steps": [] } } ] } ``` returns something like this: ``` { "docs": [ { "doc": { "_index": "index", "_version": "-3", "_id": "doc1", "_source": { "name": "okay", "steps": [ "before", "after" ] }, "_ingest": { "timestamp": "2024-10-04T16:25:20.448881Z" } } }, { "doc": { "_index": "index", "_version": "-3", "_id": "doc2", "_source": { "name": "bad", "error": "oh no", "steps": [ "before" ] }, "_ingest": { "timestamp": "2024-10-04T16:25:20.448932Z" } } } ] } ```
30 lines
774 B
Text
30 lines
774 B
Text
[[terminate-processor]]
|
|
=== Terminate processor
|
|
|
|
++++
|
|
<titleabbrev>Terminate</titleabbrev>
|
|
++++
|
|
|
|
Terminates the current ingest pipeline, causing no further processors to be run.
|
|
This will normally be executed conditionally, using the `if` option.
|
|
|
|
If this pipeline is being called from another pipeline, the calling pipeline is *not* terminated.
|
|
|
|
[[terminate-options]]
|
|
.Terminate Options
|
|
[options="header"]
|
|
|======
|
|
| Name | Required | Default | Description
|
|
include::common-options.asciidoc[]
|
|
|======
|
|
|
|
[source,js]
|
|
--------------------------------------------------
|
|
{
|
|
"description" : "terminates the current pipeline if the error field is present",
|
|
"terminate": {
|
|
"if": "ctx.error != null"
|
|
}
|
|
}
|
|
--------------------------------------------------
|
|
// NOTCONSOLE
|