12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849 |
- [[convert-processor]]
- === Convert processor
- ++++
- <titleabbrev>Convert</titleabbrev>
- ++++
- Converts a field in the currently ingested document to a different type, such as converting a string to an integer.
- If the field value is an array, all members will be converted.
- The supported types include: `integer`, `long`, `float`, `double`, `string`, `boolean`, and `auto`.
- Specifying `boolean` will set the field to true if its string value is equal to `true` (ignore case), to
- false if its string value is equal to `false` (ignore case), or it will throw an exception otherwise.
- Specifying `auto` will attempt to convert the string-valued `field` into the closest non-string type.
- For example, a field whose value is `"true"` will be converted to its respective boolean type: `true`. Do note
- that float takes precedence of double in `auto`. A value of `"242.15"` will "automatically" be converted to
- `242.15` of type `float`. If a provided field cannot be appropriately converted, the Convert Processor will
- still process successfully and leave the field value as-is. In such a case, `target_field` will
- still be updated with the unconverted field value.
- [[convert-options]]
- .Convert Options
- [options="header"]
- |======
- | Name | Required | Default | Description
- | `field` | yes | - | The field whose value is to be converted
- | `target_field` | no | `field` | The field to assign the converted value to, by default `field` is updated in-place
- | `type` | yes | - | The type to convert the existing value to
- | `ignore_missing` | no | `false` | If `true` and `field` does not exist or is `null`, the processor quietly exits without modifying the document
- include::common-options.asciidoc[]
- |======
- [source,js]
- --------------------------------------------------
- PUT _ingest/pipeline/my-pipeline-id
- {
- "description": "converts the content of the id field to an integer",
- "processors" : [
- {
- "convert" : {
- "field" : "id",
- "type": "integer"
- }
- }
- ]
- }
- --------------------------------------------------
- // NOTCONSOLE
|