jcoffey-dev is traveling from Thursday 1 October through Sunday 4 October. Issues and pull requests are welcome, and will get an answer after that. Thanks for your patience.
queue.count, user.count and domain.count count the whole cluster, and only the node with the metrics-calculation role works them out. Every node still stored them.
The latest stored readings in production show the result:
gauge
node 0
node 1
node 2
queue.count
18,446,744,073,709,551,596 (−20)
18,446,744,073,709,551,613 (−3)
8
user.count
0
0
7
domain.count
0
0
11
On the non-calculating nodes, the queue gauge only moves with local queue events and drifts below zero. A reader taking the latest reading got whichever node wrote last.
sample(calculates) leaves the three out on a node without the role. store_metrics passes roles.metrics_calculate.
Unit test: only_the_calculating_node_stores_cluster_gauges.
The Prometheus and OTel exports are unchanged.
The console side (per-node gauge readings, and skipping the junk already stored) is in a separate inbuxa-admin PR.
No new strings.
queue.count, user.count and domain.count count the whole cluster, and only the node with the metrics-calculation role works them out. Every node still stored them.
The latest stored readings in production show the result:
| gauge | node 0 | node 1 | node 2 |
|---|---|---|---|
| queue.count | 18,446,744,073,709,551,596 (−20) | 18,446,744,073,709,551,613 (−3) | 8 |
| user.count | 0 | 0 | 7 |
| domain.count | 0 | 0 | 11 |
On the non-calculating nodes, the queue gauge only moves with local queue events and drifts below zero. A reader taking the latest reading got whichever node wrote last.
- sample(calculates) leaves the three out on a node without the role. store_metrics passes roles.metrics_calculate.
- Unit test: only_the_calculating_node_stores_cluster_gauges.
- The Prometheus and OTel exports are unchanged.
The console side (per-node gauge readings, and skipping the junk already stored) is in a separate inbuxa-admin PR.
No new strings.
queue.count, user.count and domain.count count the whole cluster, and
only the node with the metrics-calculation role works them out. Every
node still stored them. On the others the queue gauge only moves with
local queue events, so it had drifted below zero (production: node 0 at
18,446,744,073,709,551,596, node 1 at ...613, i.e. -20 and -3), and
the account and domain counts stayed at 0. A reader taking the latest
reading got whichever node wrote last.
sample() now takes whether the node calculates them and leaves them out
otherwise. A unit test covers both cases.
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
queue.count, user.count and domain.count count the whole cluster, and only the node with the metrics-calculation role works them out. Every node still stored them.
The latest stored readings in production show the result:
On the non-calculating nodes, the queue gauge only moves with local queue events and drifts below zero. A reader taking the latest reading got whichever node wrote last.
The console side (per-node gauge readings, and skipping the junk already stored) is in a separate inbuxa-admin PR.
No new strings.