swarm-otel: let the collector write its socket dir, and probe every route through nginx
This commit is contained in:
parent
1325f44707
commit
41bea3c6d9
3 changed files with 104 additions and 6 deletions
|
|
@ -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
|
||||
|
|
|
|||
Loading…
Reference in a new issue