Skip to content

Processor telemetry should include Pipeline ID as attribute #10908

@djaglowski

Description

@djaglowski

Is your feature request related to a problem? Please describe.

The processorhelper package defines several metrics but provides only a "Processor ID" attribute. This is insufficiently observable because a processor ID may apply to multiple instances of a processor. In effect, all instances of the processor configuration are reporting metrics as if they are the same instance.

Users should be able to understand the behavior of a processor within the context of each pipeline because the usage may be very different per pipeline.

As an example, suppose a processor used in two pipelines. In one pipeline, it reports 1000/1000 log records accepted, 0 for other metrics. In the other pipeline, it reports 10/10 log records rejected, 0 for all other metrics. Currently, the metric describes this as if 99% of data is being accepted by the processor. The reality that one pipeline is very healthy while the other is very unhealthy can easily be overlooked because of the lack of a pipeline ID attribute.

Describe the solution you'd like

Add a "Pipeline ID" attribute to all processor helper metrics.

Describe alternatives you've considered

This is proposed as an alternative to #10664, which would eliminate the need for the Pipeline ID attribute, but would introduce breaking changes elsewhere.

Additional Context

#10708 (comment)

Metadata

Metadata

Assignees

No one assigned

    Labels

    collector-telemetryhealthchecker and other telemetry collection issues

    Type

    No type

    Projects

    Status

    Done

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions