Der Blog

PagerDuty und Webscript.io | Telefonkonferenzen, Herzschlagüberwachung und mehr

von David Shackelford 10. April 2014 | 3 Minuten Lesezeit

PagerDuty sendet Webhooks, wenn bei einem Vorfall verschiedene Ereignisse eintreten. Ein Webhook ist eine benutzerdefinierte HTTP-Anfrage, die mehr oder weniger alles enthalten kann, was Sie möchten, und an eine von Ihnen angegebene Adresse gesendet wird. Dies ist eine großartige Möglichkeit, Anwendungen miteinander kommunizieren zu lassen, ohne die Komplexität einer vollwertigen API. Wir verwenden derzeit Webhooks, um Integrationen mit HipChat, Slack, Zapier und anderen Tools zu unterstützen, und wir sehen häufig, dass Kunden diese Funktion verwenden, um ihre eigenen benutzerdefinierten Integrationen zu erstellen.

Dave Hayes, Produktmanager bei PagerDuty, nutzte bei einem früheren Hackday Webhooks, um eine animierte Karte der PagerDuty Vorfälle . Er verwendete Feuerbasis um die eingehenden Webhooks von PagerDuty zu verarbeiten, aber ich wollte etwas noch Einfacheres und fand webscript.io .

Mit Webscript.io können Sie eine URL auswählen, die auf eingehende Webhooks wartet und dann ein Skript für alles ausführt, was eingeht. Es eignet sich hervorragend zum Übersetzen zwischen verschiedenen Arten von Eingabe und Ausgabe, ähnlich einer Programmierversion von Zapier. Als Bonus kann es auch geplante Skripte (Cron-Jobs) in festgelegten Intervallen ausführen.

Für mein Projekt wollte ich Webskripte verwenden, um Konferenzgespräche bei Vorfällen zu automatisieren.

Wenn ein schwerwiegender Vorfall eintrifft, möchten Sie als Erstes, dass sich jemand mit dem Problem befasst. Wenn Sie ein Junior-Responder sind, möchten Sie vielleicht eine Verstärkung oder einen Manager in der Leitung haben, oder bei schwerwiegenden Problemen möchten Sie vielleicht die Bereitschaft mehrerer verschiedener Teams.

In der Hitze des Gefechts möchten Sie sich nicht mit dem Eintippen einer Konferenzrufnummer oder URL in einem Chatroom herumschlagen – Ihr Team sollte sofort über die Informationen verfügen, die es braucht, um mit der Zusammenarbeit zu beginnen. Ich wollte eine automatisierte Möglichkeit finden, einen Konferenzruf zu einem PagerDuty Vorfall hinzuzufügen, sobald jemand ihn bestätigt.

Ich wollte ursprünglich versuchen, die Twilio-API für dieses Projekt zu verwenden, aber ich habe gelesen, dass VoiceChatAPI (A Plivo Projekt), wodurch das Erstellen einer neuen Telefonkonferenz ganz einfach wird. Sie benötigen nicht einmal einen API-Schlüssel!

So habe ich mein Webskript eingerichtet.

  webscript_diagram

Und so geht's:

1. Gehe zu webscript.io , erstelle ein neues Webscript und gib ihm eine Adresse

2. Fügen Sie das Webscript ein von Hier (oder Dieses hier wenn Sie die Hipchat-Integration nicht möchten/benötigen).

3. Erstellen Sie einen neuen PagerDuty Dienst und fügen Sie einen Webhook auf die Webscript-Adresse zeigen.

Neben Telefonkonferenzen können Webskripte für PagerDuty -Kunden noch eine Reihe weiterer nützlicher Dinge tun:

  • Verwenden Sie es als Herzfrequenzmesser um Sie zu informieren, wenn sich ein Gerät oder Dienst seit einiger Zeit nicht mehr angemeldet hat ( Beispielskript ).

  • Überprüf den Verfügbarkeit einer Website durch die Verwendung von Cron-Jobs.

  • Rufen Sie einen Bereitschaftstechniker an in eine bestehende Konferenz .

  • Übersetzen Sie Webhooks von einem Überwachungsdienst in PagerDuty API-Aufrufe.

  • Übersetzen Sie ausgehende PagerDuty Webhooks mit Ihren Gmail-Anmeldeinformationen in E-Mail-Benachrichtigungen.

Skriptbeispiele und weitere Tipps zur Verwendung von Webskripten finden Sie im Pagerduty-Webskripte Repo auf Github.

Dank an Steve Marx ( @smarx ) Und DH ( @dhfromkorea ) für ihre Hilfe bei der Zusammenstellung dieses Projekts sowie den Teams bei Webscript.io Und Plivo .

Finden Sie diese Skripte nützlich? Haben Sie eine eigene Methode, um PagerDuty und andere Apps miteinander kommunizieren zu lassen? Hinterlassen Sie einen Kommentar, schreiben Sie uns eine Nachricht an twitter oder senden Sie eine Pull-Anfrage .