The OpenTelemetry Collector uses a component health reporting system to allow components within pipelines to emit information about their health. This enables the collector service or external observers to make decisions when components encounter issues.
In the current architecture (targeting 1.0), component health is managed through a finite state machine. A component.Host implementation (like service/internal/graph.Host) may implement the componentstatus.Reporter interface to allow components to report their status.
Key status states include:
StartingOkStoppingPermanentError
Note: The component.TelemetrySettings.ReportStatus field has been removed in favor of components checking if their component.Host implements the componentstatus.Reporter interface.