Playground
Paste your alertmanager.yml, or the Kubernetes Secret, Helm values, Mimir config or
AlertmanagerConfig resources that hold it, and amlint checks it as you
type. You get the findings and the lines they point at, the route tree, where a given alert
is delivered, and how a change affects routing.
Your config stays in your browser. amlint runs on this page as Python compiled to WebAssembly. Nothing you paste or type is uploaded, and the page works offline once it has loaded.
How it works
- The page downloads Pyodide (Python for the browser) from the jsDelivr CDN, plus the amlint wheel built from this site's sources. Your browser caches them, so later visits start faster. None of the page's requests contains your config.
- Checks run in a Web Worker: the same code and the same JSON output as
amlint check --format json,amlint routeandamlint diff. - Share link puts the config into the URL after
#. Browsers don't send that part to any server, including this one, but anyone you give the link to can read the config, so remove secrets first. The page doesn't keep your config anywhere: reload it and your edits are gone. template-file-missingisn't checked for a plainalertmanager.ymlhere, because its template files aren't in the browser. Runamlint checkon your machine or in CI for that. Template files that ship in a Secret, Helm values or a Mimir config are checked.
alertmanager.yml
Findings appear here once Python has loaded.
The route tree appears once Python has loaded.
Which receivers get an alert with these labels, through which routes, and with which grouping and timings. Like amlint route.
Paste the config as it was before, e.g. from your main branch. The editor on the left is the new version. Like amlint diff: findings that are new or fixed, and the alerts that are now routed differently.
before.yml
Optional: paste Prometheus alerting rules (a rule file with groups:, or a PrometheusRule manifest). amlint then also checks that routes and inhibit rules match alert names the rules produce, and which alerts end up at the root receiver. Like amlint check --rules; the findings show up under Findings.