Der Blog

Erstellen Sie Ihre PagerDuty Berichte mit Zoho

von David Shackelford 25. Februar 2014 | 8 min Lesezeit

Zwei der wichtigsten Kennzahlen für jedes Bereitschaftsteam sind Vorfallvolumen Und Mittlere Reparaturzeit ( MTTR ). Wenn Sie verfolgen, wie viele Vorfälle in Ihr System gelangen – und von welchen Diensten –, können Sie sowohl systemische Infrastrukturprobleme als auch falsch konfigurierte Überwachungstools identifizieren. Ob es sich nun um ein Problem mit dem Kernsystem handelt oder nur um einen Überwachungsschwellenwert, der angepasst werden muss: Wenn Sie täglich Dutzende von Vorfällen feststellen, gibt es etwas zu beheben!

Durch die Verfolgung der MTTR können Sie sehen, wie schnell Ihr Team Probleme löst. Obwohl Vorfälle immer etwas unterschiedlich komplex sein werden, können Sie durch die Betrachtung von MTTR-Trends auf hoher Ebene im Zeitverlauf und über verschiedene Eskalationsrichtlinien oder -dienste hinweg Möglichkeiten erkennen, die Art und Weise zu verbessern, wie Ihr Team Probleme löst. Löst eine Eskalationsrichtlinie die Probleme durchweg schneller als andere? Vielleicht haben sie mehr Zuverlässigkeit in ihr System eingebaut, oder sie arbeiten über HipChat zusammen oder speichern Vorfall-Runbooks im Feld „Notizen“ für jeden PagerDuty Vorfall. Die Verfolgung von MTTR-Ausreißern kann Managern helfen, Best Practices sowie Stellen zu identifizieren, an denen sie Teams helfen können, die Probleme haben.

Derzeit können Sie einige Vorfalldaten auf der Registerkarte „Berichte“ von PagerDuty sehen, aber ich wollte einige zusätzliche Berichtsfunktionen erstellen, die uns dabei helfen, herauszufinden, welche Dienste und Eskalationsrichtlinien ungewöhnlich hohe (oder niedrige) Vorfallvolumina und MTTR hatten.

Einen coolen Tipp dazu bekam ich von unseren Freunden bei Outbrain - Sie benutzen Zoho-Berichte um unsere API einmal pro Stunde abzufragen und dann Dashboards aus diesen Daten zu erstellen. Nach ein paar Stunden des Herumstreitens mit Zoho ist hier unser Bericht:

dash_report

 

 

Sie können nach Datum, Eskalationsrichtlinie, Beauftragtem und Service filtern. Sie können auch auf einen beliebigen Datenpunkt klicken, um Details zu den zugehörigen Vorfällen anzuzeigen!

Damit Sie mit der Erstellung Ihrer eigenen Berichte beginnen können, haben wir eine Kurzanleitung zusammengestellt, die Sie durch den Prozess führt. Richten Sie zunächst ein Konto in Zoho-Berichte . Mit einem kostenlosen Konto erhalten Sie grundlegende Berichte. Es sind kostenpflichtige Versionen verfügbar, die zusätzliche Datenzuweisungen sowie private, gemeinsam nutzbare Dashboards hinzufügen.

Grundeinstellung

Erstellen Sie eine neue Tabelle und wählen Sie „Excel, CSV, HTML, Google Drive … importieren“.

PagerDuty_reports_zoho_2

Wählen Sie „JSON“ als Typ, „Web“ als Quelle und geben Sie die Zeichenfolge „https://“ ein.<your_subdomain> .pagerduty.com/api/v1/incidents” in das URL-Feld ein. Dies ruft die PagerDuty -API für eine Liste von Vorfällen auf ( Mehr Informationen ).

PagerDuty_reports_zoho_3

Als Nächstes wird eine Liste der verfügbaren Spalten angezeigt. Sie können einige Spalten aus dem Import entfernen und, wenn Sie möchten, die Überschriften mit einem Doppelklick in eine lesbarere Bezeichnung umbenennen. Klicken Sie dann auf „Weiter“.

zoho_import

Sie sollten dann etwa Folgendes sehen – eine Tabelle mit all Ihren Vorfällen. Wenn Sie die Tabelle ein wenig aufräumen möchten (und beim Importieren keine Spalten ausgewählt haben), klicken Sie auf die Schaltfläche rechts, um festzulegen, welche Spalten angezeigt werden und in welcher Reihenfolge.

PagerDuty_reports_zoho_5

Auffüllen der Vorfalltabelle

Jetzt füllen wir diese Tabelle aus. Die PagerDuty -API hat ein Zeilenlimit von 100, was bedeutet, dass wir bei jedem Aufruf nur 100 Datenzeilen abrufen können. Wir können unserem API-Aufruf jedoch einen „Offset“-Parameter hinzufügen, um zu steuern, bei welcher Zeile diese 100 beginnen. Um mit dem Ausfüllen unserer Tabelle zu beginnen, klicken Sie zunächst auf „In diese Tabelle importieren“.

PagerDuty_reports_zoho_6

Wählen Sie „incidents.id“ als passende Spalte aus, um sicherzustellen, dass wir keine Duplikate importieren. Fügen Sie dann „&offset=100“ zur URL hinzu (sonst müssen Sie nichts ändern).

PagerDuty_reports_zoho_7

Sie durchlaufen den gleichen Prozess zum Auswählen der zu importierenden Spalten, müssen aber nichts ändern:

zoho_import2

Klicken Sie auf „Erstellen“ und Ihre Tabelle sollte 100 weitere Zeilen enthalten!

Wenn Sie viele historische Daten importieren möchten, müssen Sie diesen Vorgang einmal pro hundert Datensätze durchführen und den Offset beim nächsten Mal auf 200 setzen, dann auf 300 usw. Wenn Sie eine große Datenmenge importieren müssen, möchten Sie die API möglicherweise direkt von der Befehlszeile aus aufrufen und die Informationen mithilfe eines Skripts in CSV übertragen.

Richten wir Zoho abschließend so ein, dass neue Vorfälle automatisch erfasst werden, sobald sie eingehen. Klicken Sie auf „Importieren“ und dann auf „Import erneut abrufen/planen“.

PagerDuty_reports_zoho_9

Möglicherweise sind hier einige Informationen bereits ausgefüllt – wenn nicht, füllen Sie den Rest aus. Achten Sie bei der URL darauf, dass Sie die URL ohne Offset-Parameter verwenden (also „https://<subdomain> .pagerduty.com/api/v1/incidents“).

Stellen Sie Zoho so ein, dass stündlich Daten abgerufen werden:

PagerDuty_reports_zoho_10

Unsere Daten manipulieren

Jetzt haben Sie eine Vorfalltabelle in Zoho. Wenn Sie nur über die Anzahl der Vorfälle berichten möchten, können Sie loslegen. Wenn Sie jedoch auch über die Lösungszeit berichten möchten, müssen wir noch etwas mehr tun. Wählen Sie „Neu“ und dann „Neue Abfragetabelle“.

  PagerDuty_reports_zoho_11

Mit Abfragetabellen können Sie SQL-Befehle für Ihre Basis-Vorfalltabelle ausführen, was uns hilft, die gewünschten Daten grafisch darzustellen. Wenn Sie SQL kennen, sind Sie an diesem Punkt wahrscheinlich gut aufgestellt. Falls nicht, finden Sie hier eine Beispielabfrage für den Einstieg:

SELECT distinct „incidents.id“ als Vorfall-ID, Zeitstempel („incidents.created_on“) als Erstellungsdatum, Vorfälle.“incidents.html_url“ als Link, „incidents.escalation_policy.name“ als Eskalationsrichtlinie, „incidents.service.name“ als Dienst, „incidents.resolved_by_user.name“ als Resolver, Sek. bis Zeit((unix_timestamp(„incidents.last_status_change_on“) – unix_timestamp(„incidents.created_on“))) als Auflösungszeit, Zeitstempel(„incidents.last_status_change_on“) als Auflösungsdatum, Runde((unix_timestamp(„incidents.last_status_change_on“) – unix_timestamp(„incidents.created_on“))/60) als Auflösungsminuten, concat_ws(':',”incidents.trigger_summary_data.subject”,”incidents.trigger_summary_data.description”) als Details

VON Vorfällen

WO „incidents.status“ = „gelöst“

Klicken Sie auf „Ausführen“. Unten sollte eine neue Tabelle angezeigt werden. Diese Tabelle ist die, auf deren Grundlage wir unsere Diagramme erstellen werden.

NOTIZ : Sie könnten versucht sein, einige Messwerte aus Ihrer Originaltabelle und einige aus der Abfragetabelle grafisch darzustellen. Das funktioniert, aber wenn Sie alles aus der Abfragetabelle heraus tun, werden zusätzliche Funktionen aktiviert, die ich später erläutern werde.

PagerDuty_reports_zoho_12

Diagramm Zeit

Lassen Sie uns nun unser erstes Diagramm erstellen. Wählen Sie in Ihrer Abfragetabelle „Neu“ und dann „Neue Diagrammansicht“ aus.

PagerDuty_reports_zoho_13

Lassen Sie uns ein Diagramm erstellen, das die Anzahl der Vorfälle nach Diensten im Zeitverlauf zeigt. Ob es sich nun um ein Infrastrukturproblem oder nur um falsch konfigurierte Überwachungsschwellen handelt, eine hohe Anzahl an Vorfällen ist ein Zeichen dafür, dass etwas behoben werden muss.

Ziehen Sie „created_date“ auf die X-Achse und stellen Sie es auf „Vollständiges Datum“ ein. Ziehen Sie „incident_id“ auf die Y-Achse und stellen Sie es auf „Anzahl“ ein. Ziehen Sie dann „service“ in das Feld „color“ – Sie können sich „color“ als die Variable vorstellen, die eine Spalte in mehrere Reihen aufteilt. Klicken Sie auf „Diagramm erstellen“ und Sie sehen etwa Folgendes:

PagerDuty_reports_zoho_14

Indem Sie rechts auf die verschiedenen Dienste klicken, können Sie steuern, welche Dienste angezeigt werden. Sie können auch die Registerkarte „Filter“ verwenden, um bestimmte Dienste ein- oder auszuschließen (z. B. Dienste mit geringem Schweregrad oder Testdienste).

Fügen wir nun einen Eskalationsrichtlinienfilter hinzu, damit Sie die Dienste nach Team aufgeschlüsselt sehen können. Klicken Sie auf die Registerkarte „Benutzerfilter“ und ziehen Sie dann „Eskalationsrichtlinie“ hinein. Klicken Sie dann auf „Anzeigemodus“.

PagerDuty_reports_zoho_15

Jetzt können Sie die Liste der grafisch dargestellten Dienste nach Eskalationsrichtlinie filtern! Dies ist eine große Hilfe für Teamleiter, die nur die Dienste sehen möchten, für die sie verantwortlich sind.

PagerDuty_reports_zoho_16

Speichern Sie Ihren Bericht und geben Sie ihm einen aussagekräftigen Namen.

PagerDuty_reports_zoho_17

Lassen Sie uns nun die Zeit bis zur Lösung grafisch darstellen, um zu sehen, wie schnell unser Team Probleme behebt. Erstellen Sie ein neues Diagramm und setzen Sie das Erstellungsdatum auf die X-Achse, die Minuten bis zur Lösung auf die Y-Achse und die Eskalationsrichtlinie als „Farbe“. Ich füge auch gerne „incident_id(count)“ zum Tooltip-Feld hinzu, damit mir beim Überfahren eines bestimmten Tages mit der Maus auch angezeigt wird, wie viele Vorfälle es gab.

PagerDuty_reports_zoho_18

Unter „Benutzerfilter“ können Sie hinzufügen, was Sie möchten, aber ich schlage vor, einen Filter für „Resolvemins“ hinzuzufügen. Dies gibt uns eine plumpe Möglichkeit, lang andauernde Vorfälle auszuschließen und ein weniger verrauschtes Diagramm zu erhalten. Hinweis für die Mathe-Freaks da draußen: Der Median oder das Perzentil wären ein viel besseres Maß für die Lösungszeit. Diese Übung überlasse ich Ihnen 🙂

PagerDuty_reports_zoho_19

Klicken Sie auf „Diagramm erstellen“, probieren Sie die verschiedenen Filter aus und stellen Sie sicher, dass Sie zufrieden sind. Speichern Sie dann diesen Bericht.

Alles zusammenfügen

Lassen Sie uns abschließend ein Unternehmens-Dashboard erstellen. Wählen Sie „Neues Dashboard“:

PagerDuty_reports_zoho_20

Ziehen Sie Ihre beiden Berichte aus der linken Seitenleiste hinein. Sie werden sehen, dass die Benutzerfilter aus beiden Berichten automatisch oben hinzugefügt werden! Sie können auch beliebige andere Benutzerfilter hinzufügen. Diese wirken sich auf beide Berichte im Dashboard aus.

  PagerDuty_reports_zoho_21

Wenn Sie mit Ihrem Dashboard zufrieden sind, können Sie es speichern. Sie können Ihrem Dashboard weitere grafische, tabellarische und zusammenfassende Ansichten hinzufügen. Mein endgültiges Dashboard sieht folgendermaßen aus:

dash_report

Teilen Ihres Berichts

Zum Schluss wollen wir unsere tollen Berichte auch anderen Leuten im Unternehmen zeigen. Um einen Bericht oder ein Dashboard freizugeben, klicken Sie einfach auf das Menü „Veröffentlichen“ in der Symbolleiste:

PagerDuty_reports_zoho_23

Sie erhalten Links oder eingebetteten Code, mit denen Sie Ihr Diagramm in Ihrer Organisation teilen können (wir betten unseres in unser Confluence-Wiki ein). Beachten Sie, dass Sie beim kostenlosen Zoho-Plan angemeldet sein müssen, um das Dashboard anzuzeigen. Bezahlte Pläne bieten jedoch auch öffentliche eingebettete Diagramme.

Wir hoffen, es gefällt euch! Nochmals vielen Dank an Outbrain für den Tipp.