Files
telemetry/docs/standard-warnings.md
71f0462d54 chore: remove MD009, MD010, MD012 exceptions (#15048)
<!--Ex. Fixing a bug - Describe the bug and how this fixes the issue.
Ex. Adding a feature - Explain what this achieves.-->
#### Description

Remove some markdownlint exceptions: trailing whitespace, hard tabs,
consecutive blank lines.

Mostly solved by running `markdownlint --fix .` after removing the
exceptions, with some manual changes to correct indentation in Go code
blocks.

Tabs are typical for actual Go code but I've replaced with two spaces
here - other option is just keeping the hard tabs exception in.

<!-- Issue number if applicable -->
#### Link to tracking issue
Partially fixes
https://github.com/open-telemetry/opentelemetry-collector/issues/14731

#### Testing

* ran `markdownlint .` after removing rules and making fixes, verified
no issues

<!--Describe the documentation added.-->
#### Documentation

None. Modified existing documentation.

---------

Co-authored-by: Alex Boten <[email protected]>
2026-04-02 17:25:32 +00:00

1.9 KiB

Standard Warnings

Some components have scenarios that could cause issues. Some components require the collector be interacted with in a specific way in order to ensure the component works as intended. This document describes common warnings that may affect a component in the collector.

Visit a component's README to see if it is affected by any of these standard warnings.

Unsound Transformations

Incorrect usage of the component may lead to telemetry data that is unsound i.e. not spec-compliant/meaningless. This would most likely be caused by converting metric data types or creating new metrics from existing metrics.

Statefulness

The component keeps state related to telemetry data and therefore needs all data from a producer to be sent to the same Collector instance to ensure a correct behavior. Examples of scenarios that require state would be computing/exporting delta metrics, tail-based sampling and grouping telemetry.

Identity Conflict

The component may change the identity of a metric or the identity of a timeseries. This could be done by modifying the metric/timeseries's name, attributes, or instrumentation scope. Modifying a metric/timeseries's identity could result in a metric/timeseries identity conflict, which caused by two metrics/timeseries sharing the same name, attributes, and instrumentation scope.

Orphaned Telemetry

The component modifies the incoming telemetry in such a way that a span becomes orphaned, that is, it contains a trace_id or parent_span_id that does not exist. This may occur because the component can modify span_id, trace_id, or parent_span_id or because the component can delete telemetry.