swarm-notify-router: export event, todo, review request and consumer metrics
This commit is contained in:
parent
d86ecd68a8
commit
7efcfd0644
1 changed files with 413 additions and 4 deletions
|
|
@ -291,3 +291,27 @@ controller asks the forge under the token it already holds. The agent's create s
|
|||
carries the consumer's filter, and the queue server checks it against the
|
||||
request, so an agent can't create a consumer that delivers another agent's
|
||||
todos.
|
||||
|
||||
## Observability
|
||||
|
||||
The router pushes OTLP metrics through its container's forwarder to the swarm
|
||||
collector, labelled `service.name=hyperhive-notify-router`. With no
|
||||
`OTEL_EXPORTER_OTLP_ENDPOINT` it exports nothing. The client-certificate
|
||||
gauges (`bao.client_cert.*`) come with them.
|
||||
|
||||
| Metric | Unit | Kind | Attributes |
|
||||
| ---------------------------------------------- | ---- | --------- | -------------------------------------------------------------------------------- |
|
||||
| `hyperhive.notify_router.events` | — | counter | `event_type`; `outcome`: `routed`, `unmatched`, `ignored`, `unusable`, `retried` |
|
||||
| `hyperhive.notify_router.event.duration` | `s` | histogram | `event_type` |
|
||||
| `hyperhive.notify_router.todos` | — | counter | `op`: `upsert`, `clear`; `outcome`: `delivered`, `failed` |
|
||||
| `hyperhive.notify_router.review_requests` | — | counter | `outcome`: `requested`, `skipped`, `failed` |
|
||||
| `hyperhive.notify_router.pull.failures` | — | counter | — |
|
||||
| `hyperhive.notify_router.consumer.pending` | — | gauge | events not yet delivered to the router's consumer |
|
||||
| `hyperhive.notify_router.consumer.ack_pending` | — | gauge | events delivered and not yet acked |
|
||||
| `hyperhive.notify_router.consumer.redelivered` | — | gauge | events delivered more than once |
|
||||
|
||||
`ignored` is an event that names no issue or pull request. `unmatched` is one
|
||||
no flow matched. `retried` is one the queue or the store failed on: it comes back
|
||||
and counts again. A growing `consumer.pending` means the router is falling
|
||||
behind. The consumer gauges are read at the start of each pull, at most 30
|
||||
seconds apart.
|
||||
|
|
|
|||
Loading…
Reference in a new issue