push ci run metrics to victoriametrics, with a grafana board
A swarm-ci-metrics host unit on a 5-minute timer lists every forge repo's Actions runs as the new read-only ci-metrics account and pushes each finished run's duration and queue wait over OTLP, stamped at the run's stop time. The first pass backfills from run 1. swarm-controller mints the account's token into bao and keeps a ci-metrics team with read on the Actions unit in every organisation. Closes #5376
This commit is contained in:
parent
8b7a4e7955
commit
b072fbf4d6
36 changed files with 2849 additions and 56 deletions
|
|
@ -357,6 +357,21 @@ the private config repo with the read-only token of its own `builder` forge
|
|||
account. On a host without the store, that leaf is the one file to copy, as
|
||||
for the CI runner. What it builds and why are in [`builder.md`](builder.md).
|
||||
|
||||
### CI metrics
|
||||
|
||||
The CI run poller, a `swarm-ci-metrics` oneshot on a 5-minute timer on the host
|
||||
that sets `deploy.ci-metrics.enable`. It runs on the host, not in a container.
|
||||
`allSwarmServices` defaults it on wherever the host has the poller's store
|
||||
identity, as for the builder above. Set `deploy.ci-metrics.enable = false` to
|
||||
opt out.
|
||||
|
||||
Each pass pushes the run time and queue wait of every newly finished forge
|
||||
Actions run to the metrics store, through its own route on the swarm collector;
|
||||
the first pass pushes every run since the first. It reads the forge with the
|
||||
read-only token of its own `ci-metrics` forge account, under its own
|
||||
`ci-metrics` leaf. On a host without the store, that leaf is the one file to
|
||||
copy. What it reads and pushes are in [`ci-metrics.md`](ci-metrics.md).
|
||||
|
||||
### Review classifier
|
||||
|
||||
The review classifier's try-out service, in a `swarm-review-classifier`
|
||||
|
|
|
|||
Loading…
Reference in a new issue