Watch
0
0
Fork
You've already forked hyperhive
0

swarm-otel: let the collector write its socket dir, and probe every route through nginx

This commit is contained in:
atlas 2026-10-24 21:12:35 +02:00 • committed by mara
commit 41bea3c6d9
3 changed files with 104 additions and 6 deletions

View file

@ -337,8 +337,13 @@ the swarm tier's and one per service forwarder) listens on a unix socket in
open, and the gateway forwards to them. The gateway's routes and the collector's
receivers come from one list, so they name the same sockets. The
`swarm-otel-sockets` unit connects to each socket as the gateway's user after
the container starts and fails if one refuses for 30 seconds, so a collector
that's up but not listening shows as a failed unit.
the container starts, then requests every route through the gateway vhost. It
fails if a socket refuses for 30 seconds, or if a route answers `000`, `502` or
`504` for 30 seconds, so a collector that's up but not listening, or an nginx
that doesn't route to it, shows as a failed unit. Any other status passes, the
collector's 4xx included. A switch leaves a window of about 20 seconds in which
nginx and the container are out of step: the container stops before nginx
restarts and starts about 18 seconds after it. Senders retry through that window.
Every hive's own collector reaches this one by its gateway name,
`swarm.otel.domain` (default `otel.<swarm domain>`) — the same