Skip to main content

Prometheus Integration

Overview

OpsWorker integrates with Prometheus via AlertManager webhooks. When Prometheus alerts fire, AlertManager sends them to OpsWorker for automatic investigation.

Setup

1. Get Your Receiver Config from the Portal

In the OpsWorker portal, go to Integrations → select your cluster → Alert Manager and click Install. The portal generates the full receiver YAML, including the authorization credentials. Copy it from there rather than hand-writing it.

All clusters POST to the same endpoint: https://alerts.ow-saas-prod-ext.opsworker.ai/alerts (dev: https://alerts-dev.opsworker.ai/alerts). The cluster is identified by the credentials in the Authorization header, not by anything in the URL.

2. Configure AlertManager

Add OpsWorker as a webhook receiver in alertmanager.yml. The http_config.authorization.credentials value comes from the portal:

receivers:
- name: opsworker
webhook_configs:
- url: 'https://alerts.ow-saas-prod-ext.opsworker.ai/alerts'
send_resolved: true
http_config:
authorization:
credentials: <credentials-from-portal>

route:
receiver: default
routes:
- receiver: opsworker
continue: true # Also send to other receivers

3. For Prometheus Operator (kube-prometheus-stack)

For AlertmanagerConfig, store the credentials in a secret and reference it from authorization:

apiVersion: monitoring.coreos.com/v1alpha1
kind: AlertmanagerConfig
metadata:
name: opsworker
namespace: monitoring
spec:
receivers:
- name: opsworker
webhookConfigs:
- url: 'https://alerts.ow-saas-prod-ext.opsworker.ai/alerts'
sendResolved: true
httpConfig:
authorization:
credentials:
name: opsworker-webhook
key: credentials
route:
receiver: opsworker

4. Verify

Trigger a test alert or check the OpsWorker portal for incoming signals.

What OpsWorker Receives

FieldSource
Alert namealertname label
Severityseverity label
Namespacenamespace label
Podpod label
Descriptiondescription annotation
Summarysummary annotation
All labelsPreserved for rule matching

Tips

  • Use continue: true to send alerts to both OpsWorker and your existing receivers
  • OpsWorker handles alert grouping independently; no need to adjust AlertManager's group_by
  • Works with Prometheus 2.x+ and all AlertManager versions

Next Steps