idealista / prom2teams

prom2teams is an HTTP server built with Python that receives alert notifications from a previously configured Prometheus Alertmanager instance and forwards it to Microsoft Teams using defined connectors
Apache License 2.0
274 stars 85 forks source link

[SUPPORT] - No message received by Teams #328

Closed Vivien1978 closed 1 year ago

Vivien1978 commented 1 year ago

Hello,

I didn't succeed in sending message to MSTeams.

Here's my configuration, i used a docker image executed by

docker run -d -it -e PROM2TEAMS_LOGLEVEL="DEBUG" -e PROM2TEAMS_GROUP_ALERTS_BY=name -e PROM2TEAMS_CONNECTOR=https://xxxxxxxxxxxxx.webhook.office.com/webhookb2/xxxxxxxxxxx/IncomingWebhook/xxxxxxxxxx -p 8089:8089 --name prom2teams idealista/prom2teams and i tried generate a message by using :

curl -X POST --header 'Content-Type: application/json' --header 'Accept: application/json' -d @all_ok.json 'http://localhost:8089/v2/NameOfMyWebHook'

No message are received by Teams, however when i tried using Grafana everything works fine.

Does anyone know why i didn't receive any message ?

Thanks for your help.

santi-eidu commented 1 year ago

Is there something in the container logs? Default Connector name is /v2/Connector, Try that.

Maleware commented 1 year ago

I've got the same problem.

My connector from prometheus side looks like this:

route:
      receiver: 'null'
      receiver: 'MS-TEAMS'
      group_by: ['namespace']
      group_wait: 30s
      group_interval: 5m
      repeat_interval: 12h
      routes:
      - receiver: 'MS-TEAMS'
        matchers:
          - alertname =~ "InfoInhibitor|Watchdog"
    receivers:
    - name: 'null'
    - name: 'MS-TEAMS'
      webhook_configs:
        - url: http://0.0.0.0:8089/v2/Connector

Ignore the reciever: 'null' this is a workaround of known bug of prometheus

the prom2teams side of things looks like this:

prom2teams:
  host: 0.0.0.0
  port: 8089
  monitoring_port: 9090
  connector:  Awesome-Webhook
  connectors: {}
  # group_alerts_by can be one of
  # ("name" | "description" | "instance" | "severity" | "status" | "summary" | "fingerprint" | "runbook_url")
  group_alerts_by:
  # loglevel can be one of (DEBUG | INFO | WARNING | ERROR | CRITICAL)
  loglevel: DEBUG
  templatepath: /opt/prom2teams/helmconfig/teams.j2
  config: /opt/prom2teams/helmconfig/config.ini
  extraEnv: {}

I've got a DeadMansSwitch in Prometheus, thus I should see an alarm fire. However, there are severals rules firing.

My conf.ini :

[HTTP Server]
Host: 0.0.0.0
Port: 8089

[Microsoft Teams]
Connector: Awesome-Webhook

[Group Alerts]
Field: 

[Log]
Level: DEBUG

Can anyone help me?

santi-eidu commented 1 year ago

url: 0.0.0.0 ? this should point to the prom2teams URL.

stale[bot] commented 1 year ago

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.