otel: collectors drop their own export-failure lines instead of shipping them
This commit is contained in:
parent
f5e99fe248
commit
3fa926d7d6
1 changed files with 115 additions and 3 deletions
|
|
@ -309,6 +309,17 @@ every other exporter still arrive. The container mounts the host's journal
|
|||
read-only at `/run/host-journal`, not over its own
|
||||
`/var/log/journal`.
|
||||
|
||||
Every collector that reads a journal drops its own export failures before it
|
||||
exports: the hive collector, the agent and service-container forwarders, and
|
||||
the swarm collector's host-journal pipeline. A `filter` processor
|
||||
(`nix/collector-own-export-failures.nix`) matches records from the unit
|
||||
`opentelemetry-collector.service` whose message contains `Exporting failed` or
|
||||
`sending queue is full`. Without it, an ingest outage makes each collector log
|
||||
one line per failed batch, its receiver reads the line back and pushes it, and
|
||||
the pushes add to the outage. The collector's startup, configuration and
|
||||
receiver errors still ship. The failure itself stays visible in the collector's
|
||||
`otelcol_exporter_send_failed_*` metrics.
|
||||
|
||||
**Both store exporters are unconditional**, and `deploy.victoriametrics.enable`
|
||||
doesn't gate them: that option says this host _runs_ the store, while the swarm
|
||||
has one either way, reached by its swarm name through the gateway.
|
||||
|
|
|
|||
Loading…
Reference in a new issue