Dev Life
Überwachung der E-Mail-Infrastruktur mit den Event-Webhooks von Mailgun und Datadog automatisieren
Haben Sie schon einmal Warnungen für Aktienkurse eingerichtet? Anstatt ständig nachzusehen, erhalten Sie eine Benachrichtigung, wenn Ihre Aktie einen bestimmten Preis erreicht. Genau so funktionieren Webhooks – anstatt wiederholt nach Aktualisierungen zu suchen, wird das empfangende System automatisch vom Absender benachrichtigt, wenn ein bestimmtes Ereignis eintritt.
Mit den Event-Webhooks von Mailgun verarbeiten Sie E-Mail-bezogene Ereignisse in Echtzeit. Konfigurieren Sie diese im Mailgun Control Panel, um HTTP-POST-Anfragen an bestimmte API-Endpunkte auszulösen, sobald wichtige E-Mail-Ereignisse eintreten. Überwachen Sie Zustellungen, Öffnungen und Spam-Beschwerden in Echtzeit, um die Performance zu verfolgen und Probleme sofort zu beheben. Webhooks ermöglichen außerdem Automatisierungen, Trigger, erneute Versuche, CRM-Aktualisierungen und die Verarbeitung von Abmeldungen, sobald ein E-Mail-Ereignis eintritt – ganz ohne manuelles Eingreifen.
In diesem Artikel erfahren Sie, wie Sie die Webhooks von Mailgun nutzen, um Ihre E-Mail-Ereignisse zu überwachen.
Was sind Webhooks?
Webhooks sind eine ressourcenschonende Methode für Anwendungen, um Ereignisdaten in Echtzeit zu senden. Sie ermöglichen es einem System (dem Absender), eine HTTP-Anfrage an ein anderes System (den Empfänger) zu senden, wenn ein bestimmtes Ereignis eintritt. Anstatt dass der Empfänger ständig nach Aktualisierungen sucht, übermittelt der Absender die Daten automatisch.
Die Webhooks von Mailgun benachrichtigen Ihre Anwendung, wenn E-Mail-Ereignisse eintreten – wie z. B. Zustellungen, Bounces oder Öffnungen –, sodass sie die Ereignisse sofort bei deren Eintreten verarbeiten kann. Wenn Sie beispielsweise Werbe-E-Mails versenden und nachverfolgen möchten, wann Ihre Kundschaft auf einen Link klickt, benachrichtigen die Webhooks von Mailgun Sie automatisch. Klickt eine Person aus der Kundschaft auf einen Link in der E-Mail, erkennt Mailgun diese Aktion und sendet sofort einen Webhook an Ihren Server. Dieser enthält Details wie die E-Mail-Adresse der empfangenden Person, die angeklickte URL und den Zeitstempel:
{ "event": "clicked", "recipient": "kunde@example.com", "url": "https://ihrshop.de/sonderangebot", "timestamp": 1739373700 }
Ihr System markiert diese Person dann als „interessiert“ und löst eine Follow-up-E-Mail aus oder weist sie dem Vertriebspersonal zu, um Kontakt aufzunehmen. Dieses Tracking in Echtzeit hilft Unternehmen, das Engagement zu messen und zeitnah auf potenzielle Leads zu reagieren.
Mailgun löst Webhooks für die folgenden E-Mail-Ereignisse aus: Öffnung (open), Klick (click), Abmeldung (unsubscribe), Bounce (sowohl Hard als auch Soft Bounces), Fehler (failure) und Zustellung (delivery). Um mehr über die Webhooks von Mailgun zu erfahren, lesen Sie diesen Leitfaden.
E-Mail-Überwachung mit Event-Webhooks von Mailgun implementieren
Mit den Webhooks von Mailgun verfolgen Sie verschiedene E-Mail-Ereignisse. Die Integration in ein Überwachungstool wie Datadog hilft Ihnen, die Daten in Echtzeit zu visualisieren und zu verwalten. Richten Sie zudem Warnungen für wichtige Ereignisse wie Klicks (die auf potenzielle Leads hinweisen) oder Bounces und Zustellfehler ein – so reagieren Sie bei Bedarf schnell.
Bevor Sie mit diesem Tutorial beginnen, stellen Sie sicher, dass Sie über Folgendes verfügen:
- Ein Mailgun-Konto, um E-Mails über die Mailgun-API zu versenden. Wenn Sie noch kein Konto haben, folgen Sie diesem Leitfaden für den Schnelleinstieg , um kostenlos eines zu erstellen.
- Ein Datadog-Konto, um Mailgun-Webhook-Ereignisse zu verarbeiten und Warnungen einzurichten. Wenn Sie noch kein Konto haben, reicht eine kostenlose Testversion für dieses Tutorial aus.
- curl, ein Befehlszeilentool zum Senden von E-Mails mit der Mailgun-API.
Die Mailgun-Domain
Melden Sie sich zunächst bei Ihrem Mailgun-Konto an und notieren Sie sich Ihre Absenderdomain sowie Ihre Region aus dem Mailgun-Dashboard. Wenn Sie ein kostenloses Abonnement nutzen, sehen Sie eine Sandbox-Domain, die beim Versand von E-Mails über die Mailgun-API sowohl für den API-Endpunkt als auch für die „from“-E-Mail-Adresse verwendet wird. Die Sandbox-Domain hat das Format sandbox.mailgun.org, wie folgt:

Hinweis: Wenn Sie Ihre eigene benutzerdefinierte E-Mail-Domain für den E-Mail-Versand über Mailgun verwenden möchten, benötigen Sie ein kostenpflichtiges Abonnement. Das kostenlose Abonnement unterstützt nur eine Sandbox-Domain und begrenzt den Versand auf bis zu fünf zugelassene Empfänger.
E-Mail-Tracking für Ihre Mailgun-Domain aktivieren
Um das Engagement der Empfängerschaft zu überwachen, müssen Sie das Tracking für Ihre Mailgun-Domain aktivieren.
Navigieren Sie in Ihrem Mailgun-Konto zu Senden > Versand > Domain-Einstellungen. Stellen Sie im Abschnitt Tracking sicher, dass die Optionen Klick-Tracking, Öffnungs-Tracking und Abmeldungen aktiviert sind:

Einen Mailgun-API-Schlüssel abrufen
Erstellen Sie als Nächstes einen API-Schlüssel auf der Seite „API Security“ (API-Sicherheit), die über das Dropdown-Menü unter Ihrem Namen in der oberen rechten Ecke zugänglich ist. Diesen verwenden Sie, um Ihre Integration von Datadog und Mailgun einzurichten:

Datadog-Mailgun-Integration
Sobald Sie Ihren Mailgun-API-Schlüssel haben, melden Sie sich bei Ihrem Datadog-Konto an und gehen Sie über den linken Navigationsbereich (ziemlich weit unten) zu Integrations.
Suchen Sie auf der Seite „Integrations“ über die Suchleiste oben nach der Mailgun-Integration:

Klicken Sie auf Mailgun und wechseln Sie dann zum Tab Configure. Scrollen Sie nach unten zum Abschnitt Mailgun Accounts und klicken Sie auf Add New. Geben Sie Ihre Mailgun-Domain, Ihre Region und Ihren API-Schlüssel ein und speichern Sie anschließend Ihre Einstellungen.
Als Nächstes müssen Sie im Abschnitt Logs Collection eine Endpunkt-URL konfigurieren, damit Mailgun Ereignisdaten als Protokolle an Datadog weiterleiten kann. Mailgun-Webhooks benötigen diese URL, um Ereignisdaten zu senden.
Um die Webhook-URL zu generieren, wählen Sie entweder einen bestehenden Datadog-API-Schlüssel aus (einer wird standardmäßig erstellt) oder erstellen Sie im Konfigurations-Pop-up einen neuen, wie hier gezeigt:

Dadurch wird eine benutzerdefinierte Intake-URL mit Ihrem Datadog-API-Schlüssel generiert, ähnlich wie diese:https://http-intake.logs.us5.datadoghq.com/api/v2/logs?dd-api-key=&ddsource=mailgun
Kopieren und speichern Sie diese URL – Sie benötigen sie beim Einrichten der Mailgun-Webhooks. Schließen Sie dann das Pop-up-Fenster der Mailgun-Integration.
Weitere Details zur Integration von Datadog und Mailgun finden Sie in der offiziellen Dokumentation.
Mailgun-Webhooks erstellen
Navigieren Sie in Ihrem Mailgun-Konto zu Senden > Versand > Webhooks.
Klicken Sie auf der Webhooks-Seite oben rechts auf Add webhook. Wählen Sie den zu verfolgenden Ereignistyp aus, fügen Sie die benutzerdefinierte Intake-URL ein, die Sie im vorherigen Schritt von Datadog generiert haben, und klicken Sie auf Create webhook, um ihn zu speichern. Wiederholen Sie diesen Vorgang, um drei separate Webhooks für Delivered Messages, Opens und Clicks zu erstellen:

Sobald nun eines dieser Ereignisse stattfindet, benachrichtigt Mailgun die Datadog-URL automatisch mit den relevanten Ereignisdaten.
E-Mails über die Mailgun-API versenden
Mit Mailgun versenden Sie E-Mails über die entsprechenden APIs. Verwenden Sie das Tool curl über Ihr Terminal, um eine einzelne E-Mail mit dem folgenden Befehl zu senden:
curl -s --user 'api:YOUR_API_KEY' \
https://api.mailgun.net/v3/YOUR_DOMAIN_NAME/messages \
-F from='User Name ' \
-F to=recipient@example.com \
-F subject="Exclusive 40% discount..." \
--form-string html='As a valued customer, we're excited to offer you an exclusive 40% discount on <a href="https://example.com/awesome-product">Our Awesome Product</a>. Grab it now!' \
-F o:tracking-opens="yes"
Ersetzen Sie YOUR_API_KEY durch Ihren Mailgun-API-Schlüssel und YOUR_DOMAIN_NAME durch Ihre Mailgun-Domain. Dadurch wird Ihre Anfrage authentifiziert und sichergestellt, dass Mailgun weiß, dass die E-Mail von einer autorisierten Person gesendet wird.
Beachten Sie Folgendes:
- Das Feld „from“ muss eine gültige E-Mail-Adresse von Ihrer Mailgun-Domain enthalten.
- Das Feld „to“ darf eine beliebige E-Mail-Adresse der Zielgruppe sein, wenn Sie ein kostenpflichtiges Abonnement nutzen. Beim kostenlosen Abonnement muss es eine Ihrer zugelassene Empfänger.
- Die Option
o:tracking-opens="yes"weist Mailgun an, Öffnungsereignisse für die E-Mail zu verfolgen.
Hinweis: Die E-Mail-Nachricht muss in HTML (nicht im Nur-Text-Format) verfasst sein, da Mailgun ein unsichtbares Tracking-Pixel einfügt, um Öffnungsereignisse zu erkennen.
Die HTML-Nachricht enthält außerdem einen Link, und Mailgun verfolgt, ob die empfangende Person diesen anklickt (wodurch ein Klick-Ereignis ausgelöst wird).
Nachdem Ihre curl-Anfrage erfolgreich ausgeführt wurde, antwortet Mailgun mit einer Nachricht wie dieser:
{"id":"@.mailgun.org","message":"Queued. Vielen Dank."}
Senden Sie zu Testzwecken E-Mails an einige verschiedene Personen in Ihrer Empfängerschaft.
E-Mail-Engagement mit Datadog überwachen
Um Ihr E-Mail-Engagement zu überwachen, melden Sie sich bei Ihrem Datadog-Konto an und wechseln Sie über den linken Navigationsbereich zum Abschnitt Dashboards. Verwenden Sie die Suchleiste oben, um „Mailgun Overview“ zu finden und auszuwählen.
Datadog bietet ein vorgefertigtes Dashboard, das wichtige E-Mail-Ereignisse – wie Zustellungen, Öffnungen, Bounces und Klicks – in Echtzeit anzeigt. So überwachen Sie Ihre E-Mail-Performance auf einen Blick:

Das Dashboard zeigt wichtige Metriken wie die Anzahl der zugestellten E-Mails, der geöffneten E-Mails und der angeklickten Links an. Darüber hinaus bietet es weitere nützliche Analysen, die alle auf den von den Mailgun-Webhooks empfangenen Ereignisdaten basieren.
Einen Datadog-Monitor für Mailgun-Klick-Ereignisse einrichten
Angenommen, Sie möchten Leads aus Ihrer E-Mail-Kampagne erfassen, indem Sie alle Personen verfolgen, die auf einen Link in Ihrer E-Mail klicken. Anstatt ständig das Dashboard zu überprüfen, wäre es besser, bei jedem Klick eine E-Mail-Benachrichtigung zu erhalten.
In Datadog richten Sie Monitore ein, die basierend auf den Webhook-Ereignissen von Mailgun automatisch Warnungen auslösen. So erstellen Sie einen protokollbasierten Monitor in Datadog, der auf clicked-Ereignisse von Mailgun achtet:

Klicken Sie im linken Navigationsbereich auf Monitors und dann auf New Monitor. Wählen Sie in der Liste der Monitortypen Logs aus und klicken Sie dann unten rechts auf Configure Logs Monitor. Geben Sie die folgende Suchanfrage ein:
source:mailgun @evt.name:clicked
Dadurch werden Ihre Mailgun-Protokolle gefiltert, sodass nur geklickte Ereignisse (clicked) berücksichtigt werden.
Wählen Sie ein Evaluierungszeitfenster aus, beispielsweise fünf Minuten oder ein anderes geeignetes Intervall, je nachdem, wie oft Sie auf Klicks prüfen möchten.
Legen Sie im Abschnitt Set alert conditions den Trigger so fest, dass er ausgelöst wird, wenn der bewertete Wert above (über) dem Schwellenwert liegt. Legen Sie die Bedingung im Feld Alert threshold auf größer als 0 fest. Belassen Sie die anderen Werte unverändert. Dadurch wird sichergestellt, dass der Monitor ausgelöst wird, wenn im ausgewählten Evaluierungszeitraum von fünf Minuten ein Klick-Ereignis erkannt wird.
Legen Sie im Abschnitt Configure notifications & automations den Titel auf „Lead Alert: Campaign Link Clicked“ fest und formulieren Sie die Monitor-Nachricht wie folgt:
{{#is_alert}} Ein potenzieller Lead hat mit Ihrer Werbe-E-Mail-Kampagne interagiert.
**Lead-Details:**
– Empfangsadresse: {{log.attributes.usr.email}} – Zeitstempel: {{log.timestamp}} – Angeklickter Link: {{log.attributes.event-data.url}}
Erwägen Sie eine Kontaktaufnahme und aktualisieren Sie Ihr CRM.
—
Diese Benachrichtigung wird von der Mailgun-Datadog-Integration generiert.
@ {{/is_alert}}
Der umschließende Block {{#is_alert}}...{{/is_alert}} stellt sicher, dass diese Nachricht ausschließlich gesendet wird, wenn der Monitor ausgelöst wird (also ein Klick erkannt wird), und andernfalls nicht zur Wiederherstellung (Recovery). Die Werte in den {{...}}-Blöcken enthalten Details aus den entsprechenden Ereignisdaten.
Geben Sie in das Feld @ Add Mention die E-Mail-Adressen ein, die diese Benachrichtigung erhalten sollen, z. B. die Ihres CRM-Teams.
Überprüfen Sie abschließend Ihre Monitorkonfiguration und klicken Sie zum Beenden auf Create.
Dieser Monitor wird immer dann ausgelöst, wenn ein Klick-Ereignis von den Mailgun-Webhooks in Ihren Datadog-Protokollen erkannt wird. Ihre Benachrichtigungs-E-Mail-Adressen erhalten eine E-Mail mit den Lead-Details. Diese Einrichtung automatisiert die Lead-Erkennung aus Ihren E-Mail-Kampagnen, ohne dass Dashboards manuell überwacht werden müssen.
Wussten Sie schon? Senden Sie Monitor-Benachrichtigungen bei Bedarf über Datadog auch an Slack, Jira, Microsoft Teams und andere Dienste.
Mailgun-Datadog-Automatisierung testen
Nachdem alles eingerichtet ist, wird es Zeit zu testen, wie Mailgun-Webhooks und Datadog zusammenwirken, um Sie beim Auftreten eines Klick-Ereignisses zu warnen.
Öffnen Sie eine der Test-E-Mails, die Sie zuvor mit dem Befehl curl gesendet haben, und klicken Sie auf den Link in der E-Mail, um die Interaktion einer Person aus der Empfängerschaft mit Ihrer Kampagne zu simulieren.
Mailgun erkennt das Klick-Ereignis, löst den Webhook aus und sendet die Ereignisdaten als Protokolleintrag an Datadog.
Da Ihr Monitor so eingerichtet ist, dass er auf Klick-Ereignisse achtet, wertet Datadog die Bedingung aus und löst eine Warn-E-Mail mit wichtigen Lead-Informationen aus, wie z. B. der E-Mail-Adresse der empfangenden Person, dem Zeitstempel und der angeklickten URL.
Hier ist eine von diesem Datadog-Monitor gesendete Warn-E-Mail:

Dieses vollautomatische System verfolgt nicht nur das E-Mail-Engagement, sondern warnt Sie auch in Echtzeit, wenn ein potenzieller Lead mit Ihrer Mailgun-Kampagne interagiert. Ebenso automatisieren Sie Benachrichtigungen für E-Mail-Ereignisse wie Bounces und Fehler für Ihre SRE-Teams.
Mailgun-Webhooks löschen
Wenn Sie ein bestimmtes E-Mail-Ereignis nicht mehr verfolgen möchten, löschen Sie den entsprechenden Webhook einfach in Mailgun.
Gehen Sie in Ihrem Mailgun-Konto einfach zu Senden > Versand > Webhooks, suchen Sie das Ereignis, das Sie nicht mehr verfolgen möchten, und klicken Sie daneben auf Delete. Sie werden aufgefordert, den Löschvorgang zu bestätigen; nach der Bestätigung wird der Webhook gelöscht und Mailgun sendet keine Ereignisdaten für diesen bestimmten Ereignistyp mehr an Ihren Endpunkt.
Zusammenfassung
In diesem Tutorial haben Sie erfahren, wie Mailgun-Webhooks Ereignisdaten für verschiedene E-Mail-Interaktionen wie Zustellungen, Öffnungen, Klicks, Spam-Beschwerden und Fehler senden. Sie haben herausgefunden, wie Sie diese Webhooks in Datadog integrieren, um ein automatisiertes System zur Überwachung des E-Mail-Engagements und zum Empfang von Benachrichtigungen aufzubauen.
War dies hilfreich? Abonnieren Sie auf jeden Fall unseren Newsletter, um Updates zu Tutorial-Inhalten sowie Neuigkeiten zu E-Mail und Zustellbarkeit von unseren E-Mail-Geeks zu erhalten.