Back to Elasticsearch

KV processor [kv-processor]

docs/reference/enrich-processor/kv-processor.md

9.4.02.8 KB
Original Source

KV processor [kv-processor]

This processor helps automatically parse messages (or specific event fields) which are of the foo=bar variety.

For example, if you have a log message which contains ip=1.2.3.4 error=REFUSED, you can parse those fields automatically by configuring:

js
{
  "kv": {
    "field": "message",
    "field_split": " ",
    "value_split": "="
  }
}

% NOTCONSOLE

::::{tip} Using the KV Processor can result in field names that you cannot control. Consider using the Flattened data type instead, which maps an entire object as a single field and allows for simple searches over its contents. ::::

$$$kv-options$$$

NameRequiredDefaultDescription
fieldyes-The field to be parsed. Supports template snippets.
field_splityes-Regex pattern to use for splitting key-value pairs
value_splityes-Regex pattern to use for splitting the key from the value within a key-value pair
target_fieldnonullThe field to insert the extracted keys into. Defaults to the root of the document. Supports template snippets.
include_keysnonullList of keys to filter and insert into document. Defaults to including all keys
exclude_keysnonullList of keys to exclude from document
ignore_missingnofalseIf true and field does not exist or is null, the processor quietly exits without modifying the document
prefixnonullPrefix to be added to extracted keys
trim_keynonullString of characters to trim from extracted keys
trim_valuenonullString of characters to trim from extracted values
strip_bracketsnofalseIf true strip brackets (), <>, [] as well as quotes ' and " from extracted values
descriptionno-Description of the processor. Useful for describing the purpose of the processor or its configuration.
ifno-Conditionally execute the processor. See Conditionally run a processor.
ignore_failurenofalseIgnore failures for the processor. See Handling pipeline failures.
on_failureno-Handle failures for the processor. See Handling pipeline failures.
tagno-Identifier for the processor. Useful for debugging and metrics.