- Heartbeat Reference: other versions:
- Heartbeat overview
- Quick start: installation and configuration
- Set up and run
- Configure
- Monitors
- Task scheduler
- General settings
- Project paths
- Output
- Kerberos
- SSL
- Index lifecycle management (ILM)
- Elasticsearch index template
- Processors
- Define processors
- add_cloud_metadata
- add_cloudfoundry_metadata
- add_docker_metadata
- add_fields
- add_host_metadata
- add_id
- add_kubernetes_metadata
- add_labels
- add_locale
- add_observer_metadata
- add_process_metadata
- add_tags
- community_id
- convert
- copy_fields
- decode_base64_field
- decode_json_fields
- decompress_gzip_field
- dissect
- dns
- drop_event
- drop_fields
- extract_array
- fingerprint
- include_fields
- registered_domain
- rename
- translate_sid
- truncate_fields
- urldecode
- Autodiscover
- Internal queue
- Logging
- HTTP endpoint
- Regular expression support
- Instrumentation
- heartbeat.reference.yml
- How to guides
- Exported fields
- Beat fields
- Cloud provider metadata fields
- Common heartbeat monitor fields
- Docker fields
- ECS fields
- Host fields
- HTTP monitor fields
- ICMP fields
- Jolokia Discovery autodiscover provider fields
- Kubernetes fields
- Process fields
- Host lookup fields
- SOCKS5 proxy fields
- Monitor summary fields
- TCP layer fields
- TLS encryption layer fields
- Monitor
- Secure
- Troubleshoot
- Get help
- Debug
- Common problems
- Heartbeat uses too much bandwidth
- Error loading config file
- Found unexpected or unknown characters
- Logstash connection doesn’t work
- Publishing to Logstash fails with "connection reset by peer" message
- @metadata is missing in Logstash
- Not sure whether to use Logstash or Beats
- SSL client fails to connect to Logstash
- Monitoring UI shows fewer Beats than expected
- Contribute to Beats
IMPORTANT: No additional bug fixes or documentation updates
will be released for this version. For the latest information, see the
current release documentation.
Decode JSON fields
editDecode JSON fields
editThe decode_json_fields
processor decodes fields containing JSON strings and
replaces the strings with valid JSON objects.
processors: - decode_json_fields: fields: ["field1", "field2", ...] process_array: false max_depth: 1 target: "" overwrite_keys: false add_error_key: true
The decode_json_fields
processor has the following configuration settings:
-
fields
- The fields containing JSON strings to decode.
-
process_array
- (Optional) A boolean that specifies whether to process arrays. The default is false.
-
max_depth
-
(Optional) The maximum parsing depth. A value of 1 will decode the
JSON objects in fields indicated in
fields
, a value of 2 will also decode the objects embedded in the fields of these parsed documents. The default is 1. -
target
-
(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 thenull
value (target:
) is treated as if the field was not set at all. -
overwrite_keys
- (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.
-
add_error_key
-
(Optional) If it set to true, in case of error while decoding json keys
error
field is going to be part of event with error message. If it set to false, there will not be any error in event’s field. Even error occurs while decoding json keys. The default value is false. -
document_id
-
(Optional) JSON key to use as the document id. If configured,
the field will be removed from the original json document and stored in
@metadata._id
Was this helpful?
Thank you for your feedback.