Prior to T256168: Move beta cluster automatic deployment to a dedicated infrastructure migrating the task trigger from jenkins to a systemd timer job failures and eventual recoveries would be announced in the #wikimedia-releng IRC channel. Currently individual failures (but not recoveries) are reported to the releng@lists.wikimedia.org mailing list. This signal is durable and helpful, but it would still be nice to give a bit of wider visibility to the developers used to the former IRC alerting of the job state.
Description
Description
| Status | Subtype | Assigned | Task | ||
|---|---|---|---|---|---|
| Open | None | T53494 Use Beta cluster as a true canary for code deployments (epic) | |||
| Stalled | None | T53497 Setup monitoring for Beta Cluster (tracking) | |||
| Open | Feature | None | T432364 Restore IRC alerting for failed MediaWiki updates in Beta Cluster |
Event Timeline
Comment Actions
I moved on from this advice without comment before when @dancy suggested an email alerting method that was relatively easy to add to the systemd unit.
Using prometheus + alert manger would give us the ability to alert on IRC and other alertmanager sinks. I currently am in need of some hand holding by subject matter experts to understand a few things:
- Is there already a prometheus instance collecting the node_systemd_unit_state metric for the wmf-beta-update-all.service unit on deployment-deploy04.deployment-prep.eqiad1.wikimedia.cloud?
- If not where do I start to make that part happen?
- Is there an example of a node_systemd_unit_state metric being used in a grafana dashboard to show job stability?
- Is there an example of a node_systemd_unit_state metric being used in an alertmanager alert?
- Is T315695: Add basic MediaWiki/web site up alerting to the Beta Cluster still the best documentation/example for adding alertmanager monitoring for a Cloud VPS project without its own alerting stack?
Comment Actions
- Is there an example of a node_systemd_unit_state metric being used in a grafana dashboard to show job stability?
I am not immediately aware of one.
- Is there an example of a node_systemd_unit_state metric being used in an alertmanager alert?
MariaDB [prometheusconfig]> select * from alerts where id = 31\G
*************************** 1. row ***************************
id: 31
project_id: 10
name: MaintainProjectsBroken
expr: node_systemd_unit_state{project="metricsinfra",name="metricsinfra-maintain-projects.service",state="failed"} == 1
duration: 15m
severity: warning
annotations: {"summary": "metricsinfra failing to update projects", "runbook": "https://wikitech.wikimedia.org/wiki/Portal:Cloud_VPS/Admin/Runbooks/MetricsinfraMaintainProjectsBroken"}
- Is T315695: Add basic MediaWiki/web site up alerting to the Beta Cluster still the best documentation/example for adding alertmanager monitoring for a Cloud VPS project without its own alerting stack?
https://wikitech.wikimedia.org/wiki/Portal:Cloud_VPS/Admin/Monitoring#Monitoring_for_Cloud_VPS is the canonical documentation. No comment whether that's better or worse for alerts specifically than the examples in that task.