The decode_json_fields processor decodes fields containing JSON strings and replaces the strings with valid JSON objects.

 - decode_json_fields:
     fields: ["field1", "field2", ...]
     process_array: false
     max_depth: 1
     target: ""
     overwrite_keys: false

The decode_json_fields processor has the following configuration settings:

The fields containing JSON strings to decode.
(Optional) A boolean that specifies whether to process arrays. The default is false.
(Optional) The maximum parsing depth. The default is 1.
(Optional) The field under which the decoded JSON will be written. By default the decoded JSON object replaces the string field from which it was read. To merge the decoded JSON fields into the root of the event, specify target with an empty string (target: ""). Note that the null value (target:) is treated as if the field was not set at all.
(Optional) A boolean that specifies whether keys that already exist in the event are overwritten by keys from the decoded JSON object. The default value is false.