2015-07-13 06:23:07 -04:00
|
|
|
[[actions-index]]
|
|
|
|
==== Index Action
|
|
|
|
|
|
|
|
A watch <<actions, Action>> that enable you to index data in Elasticsearch.
|
|
|
|
See <<index-action-attributes>> for the supported attributes.
|
|
|
|
|
|
|
|
===== Configuring Index Actions
|
|
|
|
|
|
|
|
The following snippet shows a simple `index` action definition:
|
|
|
|
|
|
|
|
[source,json]
|
|
|
|
--------------------------------------------------
|
|
|
|
"actions" : {
|
|
|
|
"index_payload" : { <1>
|
|
|
|
"transform": { ... },<2>
|
|
|
|
"index" : {
|
|
|
|
"index" : "my-index", <3>
|
|
|
|
"doc_type" : "my-type" <4>
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
--------------------------------------------------
|
|
|
|
|
|
|
|
<1> The id of the action
|
|
|
|
<2> An optional <<transform, transform>> to transform the payload and prepare the data that should be indexed
|
|
|
|
<3> The elasticsearch index to store the data to
|
|
|
|
<4> The document type to store the data as
|
|
|
|
|
|
|
|
[[index-action-attributes]]
|
|
|
|
.Index Action Attributes
|
|
|
|
[options="header"]
|
|
|
|
|======
|
|
|
|
|Name |Required | Default | Description
|
|
|
|
|
|
|
|
| `index` | yes | - | The Elasticsearch index to
|
2015-09-15 05:10:23 -04:00
|
|
|
index into.
|
2015-07-13 06:23:07 -04:00
|
|
|
are supported
|
|
|
|
|
|
|
|
| `doc_type` | yes | - | The type of the document
|
|
|
|
the data will be indexed as.
|
|
|
|
|
|
|
|
| `execution_time_field` | no | _timestamp | The field that will store/index
|
|
|
|
the watch execution time. When
|
|
|
|
not set or when set to `_timestamp`,
|
|
|
|
the execution time will serve as
|
|
|
|
the document's
|
|
|
|
{ref}/mapping-timestamp-field.html[timestamp].
|
|
|
|
| `timeout` | no | 60s | The timeout for waiting for the index api call to return.
|
|
|
|
If no response is returned within this time, the index
|
|
|
|
action times out and fails. This setting overrides
|
|
|
|
the default internal index/bulk operations
|
|
|
|
<<default-internal-ops-timeouts, timeouts>>.
|
|
|
|
|
|
|
|
|======
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
[[anatomy-actions-index-multi-doc-support]]
|
|
|
|
===== Multi-Document Support
|
|
|
|
|
|
|
|
Like with all other actions, you can use a <<transform, transform>> to replace
|
|
|
|
the current execution context payload with another and by that change the document that
|
|
|
|
will end up indexed.
|
|
|
|
|
|
|
|
The index action plays well with transforms with its support for the special `_doc`
|
|
|
|
payload field.
|
|
|
|
|
|
|
|
When resolving the document to be indexed, the index action first looks up for a
|
|
|
|
`_doc` field in the payload. When not found, the payload is indexed as a single
|
|
|
|
document.
|
|
|
|
|
|
|
|
When a `_doc` field exists, if the field holds an object, it is extracted and indexed
|
|
|
|
as a single document. If the field holds an array of objects, each object is treated as
|
|
|
|
a document and the index aciton indexes all of them in a bulk.
|