Pipeline configuration files
In Chronosphere Telemetry Pipeline, the settings for each pipeline are stored inside a dedicated configuration file. These files must follow a standard format, but you can customize their contents to control how your pipeline gathers, modifies, and sends data.
When you modify a pipeline through the Telemetry Pipeline web interface, that pipeline's configuration file updates to reflect your changes, even if you didn't edit the file directly.
Format
Configuration files follow standard YAML conventions and use the .yaml
file
extension. Regardless of a pipeline's individual settings, all configuration
files adhere to the same core format:
pipeline:
inputs:
- Name: source1
setting: value
setting: value
processors:
<...>
- Name: source2
setting: value
setting: value
setting: value
setting: value
processors:
<...>
outputs:
- Name: destination1
setting: value
processors:
<...>
- Name: destination2
setting: value
setting: value
setting: value
processors:
<...>
Configuration files use two spaces per indent, not four.
Sections
All configuration files include a pipeline
section, an inputs
section, and
an outputs
section. Additionally, each input or output can contain an associated
processors
section.
Pipeline
The pipeline
section is the top-level section in a configuration file. It's a
parent to the inputs
section and the outputs
section.
Inputs
The inputs
section is a sequence of mappings that contains one or more sources
of telemetry data. Each mapping corresponds to a single
source plugin, and includes
key/value pairs to configure the settings for that plugin, plus an optional
processors
object.
Outputs
The outputs
section is a sequence of mappings that contains one or more destinations
for your telemetry data. Each mapping corresponds to a single
destination plugin, and includes
key/value pairs to configure the settings for that plugin, plus an optional
processors
object.
Processors
Each processors
section is a child to one of the mappings within the inputs
section or outputs
section. These sections contain
processing rules to modify the
telemetry data passing through each input or output.
Because processing rules run separately for different types of telemetry data,
a processors
section is grouped into subsections for logs
, metrics
, and
traces
, where applicable. Each telemetry type subsection includes an
actions
object, which is a sequence of mappings that contains one or more
processing rules and each rule's associated settings.
If an input or output doesn't have processing rules associated with a particular type of telemetry data, the subsection for that telemetry type is omitted.
These sections adhere to the following format:
pipeline:
<...>
processors:
logs:
- name: calyptia
actions:
- type: rule1
opts:
setting: value
setting: value
setting: value
- type: rule2
opts:
setting: value
setting: value
metrics:
- name: calyptia
actions:
- type: rule1
opts:
setting: value
setting: value
- type: rule2
opts:
setting: value
traces:
- name: calyptia
actions:
- type: rule1
opts:
setting: value
setting: value
- type: rule2
opts:
setting: value
setting: value
setting: value