Follow the steps below to configure a service so as to extract its related alert data from Prometheus. Squadcast will then process this information to create incidents for this service as per your preferences.

On the Sidebar, click on Services.

You can either navigate to an existing service or make a new one by clicking on “Add Service”.

Check the service details like name, description, and the associated escalation policy for this service and make sure it is correctly entered.

From the integration types drop down select the integration type as “Prometheus”. You will be shown your Prometheus Webhook URL.

Enter the service name and description as required and click on "Save" button to create the service.

Now open your Prometheus Alertmanager's Configuration file. (You need Prometheus Alertmanager to handle alerts generated by Prometheus. Click here for more information )

Add a new webhook receiver and enter the URL obtained earlier as the webhook url.


Now you can use this receiver in any of your alert routes (You can also make it the default receiver, as per your requirements).

Also please make sure that your alerts has the severity under labels, and annotations has the summary & description fields configured in the alert rules file as shown below in the example rules config.

serverFiles:
  alerts:
    groups:
    - name: gt.k8s.kafka.rules
      rules:
      - alert: GtK8sKafkaConsumerLag1Warning
        expr: kafka_consumergroup_lag > 500
        for: 120m
        labels:
          severity: warning
        annotations:
          description: "Kafka consumer {{$labels.consumergroup}} lags with {{$value}} messages in topic {{$labels.topic}}"
          summary: "Kafka affected in {{$labels.instance}}"

We use the summary field along with Severity & Alert group name as incident message and the description field along with generator url as incident description. Hence, severity (labels), summary & description (annotations) are mandatory for integration with Squadcast.

Try to use variable values (like instance value) in summary to differentiate similar incidents.

That's it your Prometheus integration is now good to go!!

Note: Any alert which gets resolved from Prometheus will automatically be resolved inside Squadcast as well, unless you have explicitly set send_resolved to false in the config file.

Did this answer your question?