- PagerDuty /
- Der Blog /
- Automatisierung /
- Nutzen Sie den Wert Ihrer Runbook-Automatisierungsmetriken mit Snowflake, Jupyter Notebooks und Python
Der Blog
Nutzen Sie den Wert Ihrer Runbook-Automatisierungsmetriken mit Snowflake, Jupyter Notebooks und Python
Dieser Blog wurde gemeinsam von Sebastian Joseph, Senior Solutions Consultant, PagerDuty, und Gabriel Ismael Felipe, Automation Engineer, verfasst.
Automatisierung ist zu einem integralen Bestandteil moderner Geschäftspraktiken geworden. Oftmals denken viele Menschen beim Begriff „Automatisierung“ daran, manuelle Arbeitsschritte zu reduzieren und Prozesse zu beschleunigen. Dabei wird der Nutzen und die Rendite, die Automatisierung für ein Unternehmen, ein Team oder auch nur einen bestimmten Prozess bieten kann, oft nicht ausreichend berücksichtigt.
Das Verständnis des Werts, der aus automatisierten Jobs und dem Return on Investment (ROI) dieser automatisierten Prozesse entsteht, ist eine entscheidende Messgröße für die Wertrealisierung, sei es in Bezug auf Zeitersparnis, vermiedene Fehler, Risikominderung, Anzahl der Ausführungen usw.
Mit der PagerDuty Operations Cloud können Teams Automatisierungen nach Belieben erstellen, zentralisieren und ausführen, ohne den Kontext wechseln oder drastische Änderungen am Toolset vornehmen zu müssen. Dies ist vor allem auf unsere über 700 Integrationsökosystem In diesem Blog werden wir zwei wichtige Integrationen näher betrachten: Schneeflocke Und Jupyter-Notebooks Wie können Sie also automatisierungsbezogene ROI-Informationen in Pagerduty Process Automation erfassen und Berichte erstellen, die diesen Wert erfassen? Lassen Sie uns näher darauf eingehen.
Das Automatisierungsspiral-Paradoxon
Technologieteams, die täglich Innovationen entwickeln und innovieren, geraten oft in die „Todesspirale“ der Automatisierung von Abläufen und Prozessen. Die Konversation verläuft typischerweise wie folgt:
- „Wir sind zu beschäftigt, um zu automatisieren.“
- „Warum sind wir zu beschäftigt, um zu automatisieren?“
- „Wir haben all diese Aufgaben!“
- „Warum automatisieren wir diese Aufgaben nicht?“
- „Wir sind zu beschäftigt, um uns die Zeit zu nehmen, diese Aufgaben zu automatisieren!“
Indem wir dem erweiterten Team den anhaltenden Wert der Automatisierung aufzeigen, können wir diesen Kreislauf durchbrechen und zeigen, dass wir es uns nicht leisten können, nicht um diese Mühe zu automatisieren.
In diesem Blog tauchen wir ein in zwei Es gibt verschiedene Möglichkeiten, dies zu tun:
- Eine API-Integration von Pagerduty Automation und Snowflake – wie man eine API-basierte Integration von Pagerduty Automation und Snowflake verwendet, um die ROI-Daten für jeden Joblauf zu erfassen und mit diesen Daten in Snowflake ein Dashboard zu erstellen, um den ROI-Wert der Automatisierung darzustellen
- Erstellen Sie weitere Integrationen oder benutzerdefinierte Berichte mit Jupyter Notebooks
Erschließen Sie den Wert Ihrer Runbook-Automatisierungs-Wertmetriken (ROI) mit Snowflake
Warum Snowflake?
Zahlreiche Unternehmen nutzen Snowflake als Datenpool. Das Dashboard-Tool in Snowflake erfasst und visualisiert den Nutzen der Automatisierung. Durch die gemeinsame Nutzung von Snowflake und der PagerDuty Operations Cloud können Unternehmen ihre Datenbetriebseffizienz verbessern, Datenausfallzeiten minimieren und eine Echtzeitkommunikation mit Stakeholdern für ein effektives Datenmanagement etablieren.
SNOWFLAKE-Setup:
Definieren wir zunächst die Sicherheitsintegration in Snowflake:

Anschließend können wir die Arbeitsblatttabelle und die Felder in Snowflake definieren. Einige Beispiel-Schnappschüsse und Schritte finden Sie hier:


Schritte zur Einrichtung der PagerDuty Prozessautomatisierung:
Markieren Sie einen Job zur Messung und die Zeit- oder Umsatzwerte, die Ihrem Automatisierungsjob zugeordnet sind.
Jeder einzelne Job kann über eine eigene Metrik verfügen. Nehmen wir in diesem Beispiel an, dass der Job einem DevOps-Teammitglied mittlerer Ebene 10 Minuten Arbeit erspart, was 10 US-Dollar pro Ausführung entspricht.

Weitere Informationen finden Sie im PagerDuty Runbook Automation-Dokumentation.
Detaillierte Schritte:
Wir verwenden die „ROI-Metriken“ Plugin Verfügbar in der Jobdefinition, um die Daten zu den eingesparten Stunden bei der Ausführung eines Automatisierungsjobs zu erfassen. Dies muss für den Job basierend auf der durch die Automatisierung eingesparten Zeit manuell festgelegt/definiert werden.
Im Mehr bearbeiten des Jobs in der Prozessautomatisierung, aktivieren Sie „ ROI-Metrikdaten ”-Flag. (Job bearbeiten -> Ausführungs-Plugins -> ROI-Metrikdaten prüfen (mit einer gültigen Angabe zu „Eingesparten Stunden“, Beispiel: 1,25 Stunden).

Das Obige liefert bei Ausführung des Auftrags die folgende ROI-Metrikdatenausgabe:

Posten Sie dann die im PA-Jobschritt gesammelten Schlüssel-Wert-ROI-Daten mithilfe einer HTTP-Methode: Post und der eingebetteten SQL-Anweisung in einer in Snowflake definierten Datenbank.
Ausgabe beim Posten in Snowflake (für jede Ausführung des Jobs wird eine Zeile mit der Metrik hinzugefügt):

Runbook Automation Value Metrics (ROI) mit Jupyter Notebook:
Warum ein Jupyter-Notebook?

Jupyter Notebooks bieten eine interaktive Computerumgebung, die es Nutzern ermöglicht, Code, Markdown-Text und visuelle Ausgaben zu kombinieren. Dadurch eignet es sich ideal für die Datenanalyse, den Austausch von Erkenntnissen und sogar die Verteilung von Softwaretools. Wir sehen uns ein Python-Skript an, das ROI-Kennzahlen über die Runbook Automation API extrahiert. Außerdem besprechen wir, wie dieses Tool als Jupyter Notebook zusammen mit einer .env-Datei zur einfachen Konfiguration verteilt wird.
Der Beispielcode kann an Ihre eigenen Umgebungen, Notebooks, Business Intelligence (BI)-Tools oder geplanten Skripts angepasst oder erweitert werden. Der Ansatz kann auch an Ihre bevorzugte Sprache angepasst werden.
- 🔗 Installieren von Jupyter Notebooks
- 🔗 Beispiel-Notebook mit funktionierendem Code
- 🔗 Beispiel einer .env-Vorlage
Bevor Sie beginnen:
Jobs müssen markiert werden, um ihre eigenen ROI-Kennzahlen zu sammeln ( hier beschrieben ).
Jeder einzelne Job kann über eine eigene Metrik verfügen. Nehmen wir in diesem Beispiel an, dass der Job einem DevOps-Teammitglied mittlerer Ebene 10 Minuten Arbeit erspart, was 10 US-Dollar pro Ausführung entspricht.

Weitere Informationen finden Sie in der Runbook Automation-Dokumentation
Kernkonzepte
Konfigurations- und Umgebungsvariablen
Die .env-Datei dient als Grundlage für die Konfiguration unseres Skripts. Durch die Verteilung dieser Datei zusammen mit dem Jupyter Notebook können Benutzer ihre Umgebung sicher einrichten und sensible Funktionen wie den erforderlichen API-Schlüssel externalisieren.

Ermöglichen des Verweisens auf die Konfigurationsdaten im Notebook:

Sie können das Notizbuch für das Projekt, die Tags und den Verlauf einfach ändern (z. B. 1 h, 24 h, 1 d, 14 d).
Authentifizieren und Abrufen von Auftragsdaten
Die Authentifizierung erfolgt über ein Inhabertoken, das in Runbook Automation generiert und aus Sicherheitsgründen in der Umgebungsdatei gespeichert wird.
Nach der Authentifizierung sieht der Ablauf innerhalb des Codes folgendermaßen aus:
- Mithilfe der Runbook Automation API ruft das Skript eine Liste von Jobs basierend auf bestimmten Tags ab. Dies gibt eine Liste der Job-IDs pro Tag zurück.
![]()
- Für jede ID sehen wir uns die Ausführungsliste für den Job an und geben eine Liste der Ausführungs-IDs zurück.
![]()
- Schließlich iterieren wir durch die Ausführungen, um die ROI-Daten zurückzugeben

Datenaggregation und -analyse
Alle von uns erfassten Daten werden in einem Pandas DataFrame gespeichert, was die anschließende Analyse und Berichterstattung vereinfacht. Aufgrund der Dateniteration kann die Verarbeitung größerer Datensätze einige Zeit in Anspruch nehmen.
Zusammenfassung der Metriken
Um Ausgabewerte als Zeit- oder Int-Werte zu behandeln, sind einige Änderungen erforderlich, aber der bereitgestellte Code sollte selbsterklärend sein.
Für das Beispiel haben wir auch die Gesamtlaufzeit jedes erfolgreichen Jobs hinzugefügt, falls ein Vergleich mit der manuellen Ausführung eines oder mehrerer Jobs erforderlich ist.
Mögliche Verbesserungen und zukünftige Änderungen
- Fehlerbehandlung: Dem Notebook fehlt derzeit eine ausführliche Fehlerbehandlung, die es robuster machen würde.
- Paginierung: Das Skript ruft derzeit bis zu 1.000 Ausführungsdatensätze ab. Durch die Implementierung der Paginierung können größere Datensätze verarbeitet werden.
- Datenvisualisierung: Die Einbindung grafischer Darstellungen der Daten würde umsetzbarere Erkenntnisse liefern.
- Ändern Sie die Ausführung mehrerer Jobs und speichern Sie sie auf einer externen BI-Plattform.
Fazit und nächste Schritte
1. Dieses Jupyter Notebook dient als leistungsstarkes Tool zum Erfassen von ROI-Kennzahlen und zur Auswertung Ihrer automatisierten Prozesse. Es funktioniert im Ist-Zustand und kann mit einigen Verbesserungen zu einem unverzichtbaren Bestandteil Ihres Automatisierungs-Werkzeugkastens werden.

2. Durch die weitere Integration von Jupyter Notebooks und Snowflake können erweiterte ROI-Kennzahlen erfasst und eine Dashboard-Darstellung der Ergebnisse erstellt werden. Jupyter Notebook wird für interaktives Computing mit Python verwendet.
3. Snowflake kann verwendet werden, um diese ROI-Schnappschüsse zu erfassen und Werte über mehrere Umgebungen hinweg zusammenzufassen. Außerdem können ROI-Daten über längere Zeiträume hinweg angezeigt werden. Die erforderlichen Schritte zum Ausführen von Abfragen mit Python über Jupyter Notebook und zum Arbeiten mit Snowflake:
- Verbinden Sie Jupyter Notebook mit Snowflake (Sie können dies mithilfe von SnowCD und Python Connector tun, wie im folgenden Beispiel dargestellt): ( https://blogs.perficient.com/2020/06/06/integrating-jupyter-notebook-with-snowflake/ )
- Sobald dies erledigt ist, können Sie mit Python über Jupyter Notebooks Tabellen erstellen, Daten laden und Abfragen durchführen.
4. Jetzt haben Sie Zugriff auf diese Daten. Sie können diese als Beweis für den Wert der Automatisierung gegenüber der Geschäftsleitung, als tägliche Zusammenfassung für Ihre Automatisierungsbenutzer oder als Teil des Werts verwenden, den Sie Ihren Kunden in einer Managed-Service-Umgebung zurückgeben.
Unsere Serviceteams können Ihnen auch bei spezifischen Datenaufgaben und Anpassungen helfen.
Wie geht es weiter?
PagerDuty Automation wird die ROI-Erfassungsfunktionen unserer Automatisierungsplattform kontinuierlich erweitern. Ziel ist es, die vielfältigen Möglichkeiten aufzuzeigen, wie Automatisierung Effizienz, Risikominimierung, Kosteneinsparungen und weitere Mehrwerte ermöglicht. Wir halten diesen Blog über die Einführung dieser Funktionen auf dem Laufenden.
Eine wirkungsvolle Möglichkeit, die Auswirkungen der Automatisierung zu demonstrieren und sie in den Mittelpunkt der digitalen Transformation im gesamten Unternehmen zu rücken, besteht darin, ROI-Daten und Dashboards an das Management zu übermitteln, damit dieses den Mehrwert der Automatisierung verstehen und nutzen kann. Daten sprechen für sich selbst, und PagerDuty erleichtert die Erfassung relevanter Daten in der Automatisierungsplattform bei jedem Automatisierungslauf.
Viel Spaß!
