Prometheus – the open source monitoring and alerting tool, not the progenitor of fire – is great at collecting metrics data from workloads and generating alerts when something looks fishy. What it's not so great at doing though, at least on its own, is making sure that it's easy for your engineers to figure out which alerts actually matter. Nor does Prometheus do anything to ensure that alerts arrive at the right locations. Prometheus itself is just a monitoring tool, not a data processing and routing tool.
Fortunately, the good people who develop Prometheus recognize that many teams need to do various things with their data once Prometheus collects it. To help with that task, Prometheus developers offer Alertmanager, an optional tool that you can use alongside Prometheus itself to streamline management of the alerts.
This article breaks down everything you need to know about Alertmanager, including why it's important, how it's designed and how to configure it. We'll also touch on why we at groundcover love Prometheus Alertmanager so much, and how it has made our lives easier.
What is Prometheus Alertmanager?
Prometheus Alertmanager is an open source tool developed by the Prometheus project to help teams manage the alerting data that Prometheus produces.
To use Alertmanager, you configure clients, which are data sources for Alertmanager. In most cases, clients are Prometheus server instances. Then, you tell Alertmanager what you want it to do with alerts when the clients generate them.
Alertmanager can do lots of things, such as:
• Grouping similar alerts together so that your team sees fewer total numbers of alerts.
• Muting alerts for a set period of time.
• Forwarding alerts to various analytics and incident management tools, where the alerts serve as the foundation for other workflows.
Alertmanager runs as a standalone binary. You can launch an instance inside a Docker container with a command like: