Add Fields


Note
This feature is available as an add-on for the Honeycomb Enterprise plan. Please contact your Honeycomb account team for details.

Description 

The Add Fields processor can be used to add attributes, resources, and log record body keys from telemetry in the pipeline.

Use 

The Add Fields processor is utilized for enriching telemetry data by appending or modifying attributes, resources, and log record body keys in metrics, logs, and traces based on specified conditions.

Supported Types 

Metrics Logs Traces

Configuration 

Field Description
Telemetry Types The types of telemetry to apply the processor to.
Log Condition An OTTL condition that must evaluate to true to apply this processor. By default, the processor applies to all logs.
Datapoint Condition An OTTL condition that must evaluate to true to apply this processor to metrics. By default, the processor applies to all datapoints.
Span Condition An OTTL condition that must evaluate to true to apply this processor. By default, the processor applies to all spans.
Resource Keys One or more resource attribute names to add to logs.
Resource Action insert: Add resource if it does not exist. update: Update existing value. upsert: Insert or update.
Attribute Keys One or more attribute names to add to logs.
Attribute Action insert: Add attribute(s) if it does not exist. update: Update existing value. upsert: Insert or update.
Body Keys One or more body key names to add to log records.
Body Action insert: Add body key(s) if it does not exist. update: Update existing value. upsert: Insert or update.

Example Configuration(s) 

Append Resource to Metrics for Categorization by Source 

In this configuration, additional resource data is appended to the metrics to categorize and identify them based on their source. This is particularly useful for differentiating and filtering metrics that are generated from various environments or locations.

  • environment: dev
  • location: us-east1-b

Web Interface 

Honeycomb Docs - Add Field - image 1

Add Custom Attributes to Logs for Enhanced Searchability Based on Error Status 

This configuration will add custom resource (application_name) to logs that have a log level of ‘ERROR’. This can help in quickly identifying and tracing critical issues within a specific or part of the application.

our example log body:

{
  "error": "incorrect username or password",
  "level": "error",
  "message": "failed to authenticate user: test",
  "timestamp": "2023-07-05T13:40:17.549-0400"
}

The log condition we use to determine what logs to append the resource to:

body["level"] == error
Honeycomb Docs - Add Field - image 2