mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-10 15:05:33 +00:00
34 lines
1.5 KiB
Plaintext
34 lines
1.5 KiB
Plaintext
|
[[csv-processor]]
|
||
|
=== CSV Processor
|
||
|
Extracts fields from CSV line out of a single text field within a document. Any empty field in CSV will be skipped.
|
||
|
|
||
|
[[csv-options]]
|
||
|
.CSV Options
|
||
|
[options="header"]
|
||
|
|======
|
||
|
| Name | Required | Default | Description
|
||
|
| `field` | yes | - | The field to extract data from
|
||
|
| `target_fields` | yes | - | The array of fields to assign extracted values to
|
||
|
| `separator` | no | , | Separator used in CSV, has to be single character string
|
||
|
| `quote` | no | " | Quote used in CSV, has to be single character string
|
||
|
| `ignore_missing` | no | `true` | If `true` and `field` does not exist, the processor quietly exits without modifying the document
|
||
|
| `trim` | no | `false` | Trim whitespaces in unquoted fields
|
||
|
include::common-options.asciidoc[]
|
||
|
|======
|
||
|
|
||
|
[source,js]
|
||
|
--------------------------------------------------
|
||
|
{
|
||
|
"csv": {
|
||
|
"field": "my_field",
|
||
|
"target_fields": ["field1, field2"],
|
||
|
}
|
||
|
}
|
||
|
--------------------------------------------------
|
||
|
// NOTCONSOLE
|
||
|
|
||
|
If the `trim` option is enabled then any whitespace in the beginning and in the end of each unquoted field will be trimmed.
|
||
|
For example with configuration above, a value of `A, B` will result in field `field2`
|
||
|
having value `{nbsp}B` (with space at the beginning). If `trim` is enabled `A, B` will result in field `field2`
|
||
|
having value `B` (no whitespace). Quoted fields will be left untouched.
|