View a markdown version of this page

Überwachung von Dashboards und Alarmen auf Amazon MWAA - Von Amazon verwaltete Workflows für Apache Airflow

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Überwachung von Dashboards und Alarmen auf Amazon MWAA

Die Seite mit den Umgebungsdetails für eine Amazon Managed Workflows for Apache Airflow-Umgebung umfasst ein integriertes CloudWatch Metrik-Dashboard und eine Tabelle mit Umgebungsalarmen. Sie können diese Funktionen verwenden, um den Zustand Ihrer Umgebung direkt in der Amazon MWAA-Konsole zu überwachen, ohne dass eine zusätzliche Einrichtung erforderlich ist.

Apache Airflow stellt Metriken für mehrere Prozesse zur Verfügung, darunter die Anzahl der DAG-Prozesse, die Größe des DAG-Beutels, aktuell ausgeführte Aufgaben, Aufgabenfehler und Erfolge. Wenn Sie eine Umgebung erstellen, sendet Apache Airflow automatisch Metriken für Ihre Amazon MWAA-Umgebung an. CloudWatch Zusätzlich zum integrierten Dashboard können Sie in Amazon benutzerdefinierte Dashboards erstellen CloudWatch und Alarme für bestimmte Metriken hinzufügen. Wenn sich ein Alarm auf einem Dashboard befindet, wird er rot, wenn er in den ALARM Status übergeht. Dies erleichtert die proaktive Überwachung des Zustands Ihrer Amazon MWAA-Umgebung.

Sehen Sie sich das Kennzahlen-Dashboard an

Die Seite mit den Umgebungsdetails enthält ein integriertes CloudWatch Metrik-Dashboard, das in der Konsole unter CloudWatch Metriken angezeigt wird. Dieses eingebettete CloudWatch Dashboard zeigt Diagramme für Ihre Umgebung ohne zusätzliche Einrichtung an.

Der Bereich mit den CloudWatch Metriken auf der Seite mit den Amazon MWAA-Umgebungsdetails, der Umschalter für Alarmempfehlungen, der Filter für die Metrikabschnitte und Beispieldiagramme in der Gruppe Container werden angezeigt.

Um den vollständigen Satz von Metriken in der CloudWatch Konsole zu öffnen, wählen Sie Alle anzeigen in. CloudWatch

Das Dashboard zeigt Metriken aus den folgenden beiden CloudWatch Namespaces an:

  • AmazonMWAA— Apache Airflow-Metriken.

  • AWS/MWAA— Container-, Warteschlangen- und Datenbank-Metriken.

Sie können die folgenden Steuerelemente verwenden, um zu ändern, was auf dem Dashboard angezeigt wird:

  • Schalten Sie den Schalter Alarmempfehlungen ein, um nur die empfohlenen Messwerte anzuzeigen. Wenn Sie diesen Schalter aktivieren, zeigt jedes Diagramm seinen Alarmschwellenwert als Anmerkung an. Die Anmerkung lautet Alarme, wenn metric höher oder Alarme, wenn metric darunter, je nach Metrik.

  • Verwenden Sie den Filter „Metrische Abschnitte“, um nur die Diagramme einer bestimmten Gruppe anzuzeigen. Die verfügbaren Gruppen sind Container, Datenbank und Warteschlange, Scheduler, DAG-Verarbeitung , Tasks und Triggerer.

Anmerkung

Wenn Sie eine Umgebung so konfigurieren, dass gefiltert wird, welche Apache Airflow-Metriken sie veröffentlicht, indem Sie die Optionen „Zulassungsliste“ oder „Blockliste“ verwenden, enthalten einige Diagramme möglicherweise keine Daten.

Anmerkung

Um das Metrik-Dashboard aufrufen zu können, muss Ihre IAM-Identität über die Berechtigung zum Lesen von CloudWatch Metriken verfügen, einschließlich cloudwatch:GetMetricDatacloudwatch:GetMetricStatistics, und. cloudwatch:ListMetrics Ohne diese Berechtigungen werden die Diagramme ohne Daten gerendert.

Die vollständige Liste der Metriken, die Amazon MWAA veröffentlicht, finden Sie unter. Metriken zur Apache Airflow-Umgebung in CloudWatch

Auf dem Dashboard angezeigte Metriken

Das Dashboard unterteilt Diagramme in sechs Abschnitte, die Sie mit Metrik-Abschnitten filtern können. Es zeigt einen kuratierten Satz umgebungsübergreifender Metriken. Die Diagramme stammen aus dem AmazonMWAA Namespace (Apache Airflow-Metriken) und dem AWS/MWAA Namespace (Container-, Warteschlangen- und Datenbank-Metriken). In der folgenden Tabelle sind die Diagramme in den einzelnen Abschnitten und die jeweils angezeigten Metriken aufgeführt. CloudWatch

Dashboard-Diagramme und ihre Metriken
Abschnitt Tabelle CloudWatch Metriken
Container CPU-Auslastung des Schedulers CPUUtilization
Container Auslastung des Scheduler-Speichers MemoryUtilization
Container CPU-Auslastung des Workers CPUUtilization(BaseWorker und AdditionalWorker)
Container Auslastung des Arbeitsspeichers MemoryUtilization(BaseWorker und AdditionalWorker)
Container CPU-Auslastung des Webservers CPUUtilization
Container Speicherauslastung des Webservers MemoryUtilization
Container Worker-Container laufen Abgeleitet aus der CPUUtilization Probenanzahl
Container Herzschlag des Arbeiters CeleryWorkerHeartbeat
Datenbank und Warteschlange Freigebbarer Speicher für die Datenbank FreeableMemory
Datenbank und Warteschlange CPU-Auslastung der Datenbank CPUUtilization
Datenbank und Warteschlange Datenbankverbindungen DatabaseConnections
Datenbank und Warteschlange Latenz beim Schreiben der Datenbank WriteLatency
Datenbank und Warteschlange Alter der ältesten Aufgabe in der Warteschlange ApproximateAgeOfOldestTask
Scheduler Taktfrequenz des Schedulers SchedulerHeartbeat
Scheduler Dauer des kritischen Abschnitts im Scheduler CriticalSectionDuration
Scheduler Status der Scheduler-Tasks TasksExecutable, TasksStarving, TasksWithoutDagRun
Scheduler Extern abgebrochene Aufgaben TasksKilledExternally
Scheduler Executor hat Steckplätze geöffnet OpenSlots
DAG-Verarbeitung DAG-Analysezeit TotalParseTime
DAG-Verarbeitung DAG-Beutelgröße DagBagSize
DAG-Verarbeitung Fehler beim DAG-Import ImportErrors, DAGFileRefreshError
DAG-Verarbeitung Zustand des DAG-Prozessors ProcessorTimeouts, ManagerStalls
Aufgaben Aufgabenwarteschlange QueuedTasks, RunningTasks
Aufgaben Erfolge und Misserfolge von Aufgaben TaskInstanceSuccesses, TaskInstanceFailures
Aufgaben Zombie-Aufgaben wurden getötet ZombiesKilled
Triggerer Löst den Herzschlag aus TriggererHeartbeat
Triggerer Ergebnisse auslösen TriggersSucceeded, TriggersFailed
Anmerkung

Die Triggerer-Charts erscheinen nur in neueren Apache Airflow-Versionen. Für Trigger-Ergebnisse ist Apache Airflow v2.7.2 oder höher erforderlich, und für Triggerer Heartbeat ist v2.8.1 oder höher erforderlich.

Das Dashboard zeigt aggregierte, umgebungsweite Metriken. Es zeigt keine Metriken mit hoher Kardinalität, die Apache Airflow pro DAG, Task, Pool, Operator oder DAG-Datei veröffentlicht, und es zeigt Container-CPU und Arbeitsspeicher, aber nicht jede Container-Metrik. Die vollständige Liste der veröffentlichten Metriken finden Sie unter und. Metriken zur Apache Airflow-Umgebung in CloudWatch Container-, Warteschlangen- und Datenbankmetriken für Amazon MWAA

Alarme erstellen und überwachen

Die Seite mit den Umgebungsdetails enthält einen Bereich Alarme CloudWatch, in dem Sie Ihre Alarme erstellen und verwalten und sie dann im Kontext überwachen können. Der Bereich enthält eine Tabelle mit Umgebungsalarmen, in der die CloudWatch Alarme aufgeführt sind, die der Umgebung zugeordnet sind. Amazon MWAA ordnet diese Alarme nach CloudWatch Namespace und Environment Dimension ab, sodass die Tabelle Alarme enthält, die Sie selbst erstellen, und nicht nur die empfohlenen Alarme.

Der Bereich Alarme auf der Amazon MWAA-Umgebungsdetailseite mit den CloudWatch Schaltflächen Empfohlene Alarme erstellen und Verwalten über der Tabelle Umgebungsalarme.

In der Kopfzeile des Bereichs wird die Anzahl der Alarme in der Umgebung angezeigt, die angibt, wie viele Alarme der Umgebung sich derzeit im ALARM Status befinden. Die Tabelle „Umgebungsalarme“ enthält die folgenden Spalten.

Name Status Bedingung Action Letzte Aktualisierung
Der Name des Alarms, der mit dem Alarm in der CloudWatch Konsole verknüpft ist. Der Alarmstatus: In Alarmbereitschaft, OK oder Ungenügende Daten. Der Alarmzustand, der wie bei den darin enthaltenen n Datenpunkten angezeigt wird. duration Die Aktion des Alarms, z. B. Thema „SNS benachrichtigen“ topic, oder falls der Alarm keine Aktion hat. Datum und Uhrzeit der letzten Aktualisierung des Alarms.
Anmerkung

Um die Alarme in dieser Tabelle anzeigen zu können, benötigen Sie die cloudwatch:DescribeAlarms entsprechende Berechtigung.

Wenn die Umgebung keine Alarme enthält, ist die Tabelle Umgebungsalarme leer. Sie enthält Anleitungen zur Erstellung der empfohlenen Alarme, um mit der Überwachung Ihrer Umgebung zu beginnen.

Der Bereich „Alarme“ enthält die folgenden zwei Schaltflächen:

  • Empfohlene Alarme erstellen — Öffnet einen Stapel, der CloudFormation schnell erstellt werden kann, auf einer neuen Registerkarte. Der Stack erhält einen Namen MWAA-alarms-environment-name und erstellt einen Standardsatz empfohlener Alarme für die Umgebung.

  • Verwalten in CloudWatch — Öffnet die Alarmseite in der CloudWatch Konsole.

Um die empfohlenen Alarme zu erstellen
  1. Öffnen Sie die Amazon MWAA-Konsole und wählen Sie dann Ihre Umgebung aus, um deren Detailseite zu öffnen.

  2. Suchen Sie in der Überwachungsansicht den Bereich Alarme.

  3. Wählen Sie „Empfohlene Alarme erstellen“. Der Stapel, der CloudFormation schnell erstellt werden kann, wird in einem neuen Browser-Tab geöffnet.

  4. Überprüfen Sie den Stapel in der CloudFormation Konsole. Wenn Sie dazu aufgefordert werden, wählen Sie die Bestätigung aus, durch die CloudFormation möglicherweise IAM-Ressourcen erstellt werden.

  5. Wählen Sie Stack erstellen aus.

Nach der CloudFormation Erstellung des Stacks werden die Alarme in der Tabelle Umgebungsalarme und in der Konsole angezeigt. CloudWatch Weitere Informationen zur Bedeutung der einzelnen Alarmzustände finden Sie unterÜberblick über die Alarmzustände.

Wenn Sie „Empfohlene Alarme erstellen“ wählen, erstellt die CloudFormation Vorlage die folgenden Alarme. CloudWatch wertet all diese Alarme über einen Zeitraum von 5 Minuten (300 Sekunden) aus.

Überblick über die Alarmzustände

Ein Metrikalarm kann die folgenden Status aufweisen:

  • OK – Die Metrik oder der Ausdruck liegt innerhalb des festgelegten Schwellenwerts.

  • ALARM – Die Metrik oder der Ausdruck liegt außerhalb des festgelegten Schwellenwerts.

  • INSUFFICIENT_DATA – Der Alarm wurde soeben gestartet; die Metrik ist nicht verfügbar oder es sind nicht genügend Daten verfügbar, damit die Metrik den Alarmstatus bestimmen kann.

Beispiel für benutzerdefinierte Dashboards und Alarme

Sie können Ihre eigenen Dashboards und Alarme als Infrastruktur in Form von Code definieren, um benutzerdefinierte Dashboards programmgesteuert zu erstellen oder die Überwachung in mehreren Amazon MWAA-Umgebungen zu standardisieren. Als Alternative zum integrierten Dashboard auf der Seite mit den Umgebungsdetails erstellen das folgende Tutorial und CloudFormation die folgende Vorlage ein benutzerdefiniertes Überwachungs-Dashboard. Dieses Dashboard zeigt Diagramme mit ausgewählten Metriken für Ihre Amazon MWAA-Umgebung an.

Über diese Metriken

In der folgenden Liste werden alle Metriken beschrieben, die im benutzerdefinierten Dashboard anhand der Tutorial- und Vorlagendefinitionen in diesem Abschnitt erstellt wurden.

  • QueuedTasks— Die Anzahl der Aufgaben mit dem Status „In der Warteschlange“. Entspricht der executor.queued_tasks Apache Airflow-Metrik.

  • TasksPending— Die Anzahl der im Executor ausstehenden Aufgaben. Entspricht der scheduler.tasks.pending Apache Airflow-Metrik.

    Anmerkung

    Gilt nicht für Apache Airflow v2.2 und höher.

  • RunningTasks- Die Anzahl der Aufgaben, die im Executor ausgeführt werden. Entspricht der executor.running_tasks Apache Airflow-Metrik.

  • SchedulerHeartbeat— Die Anzahl der Check-Ins, die Apache Airflow im Rahmen des Scheduler-Jobs durchführt. Entspricht den scheduler_heartbeat Apache Airflow-Metriken.

  • TotalParseTime- Die Anzahl der Sekunden, die benötigt werden, um alle DAG-Dateien einmal zu scannen und zu importieren. Entspricht der dag_processing.total_parse_time Apache Airflow-Metrik.

Über das Armaturenbrett

Die folgende Abbildung zeigt das Überwachungs-Dashboard, das mit dem Tutorial und der Vorlagendefinition in diesem Abschnitt erstellt wurde.

Dieses Bild zeigt, wo Sie die Option Privates Netzwerk auf der Amazon MWAA-Konsole finden.

Verwenden AWS   Tutorials

Sie können das folgende AWS Tutorial verwenden, um automatisch ein Integritätsstatus-Dashboard für alle Amazon MWAA-Umgebungen zu erstellen, die derzeit bereitgestellt werden. Es generiert auch CloudWatch Alarme für kranke Mitarbeiter und Taktfehler beim Scheduler in allen Amazon MWAA-Umgebungen.

Verwenden CloudFormation

Sie können die CloudFormation Vorlagendefinition in diesem Abschnitt verwenden, um ein Überwachungs-Dashboard zu erstellen und dann Alarme auf der CloudWatch Konsole hinzuzufügen CloudWatch, um Benachrichtigungen zu erhalten, wenn eine Metrik einen bestimmten Schwellenwert überschreitet. Informationen zum Erstellen des Stacks mithilfe dieser Vorlagendefinition finden Sie unter Stapel auf der CloudFormation Konsole https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/cfn-console-create-stack.html erstellen. Informationen zum Hinzufügen eines Alarms zum Dashboard finden Sie unter Verwenden von Alarmen.

AWSTemplateFormatVersion: "2010-09-09" Description: Creates MWAA Cloudwatch Dashboard Parameters: DashboardName: Description: Enter the name of the CloudWatch Dashboard Type: String EnvironmentName: Description: Enter the name of the MWAA Environment Type: String Resources: BasicDashboard: Type: AWS::CloudWatch::Dashboard Properties: DashboardName: !Ref DashboardName DashboardBody: Fn::Sub: '{ "widgets": [ { "type": "metric", "x": 0, "y": 0, "width": 12, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "metrics": [ [ "AmazonMWAA", "QueuedTasks", "Function", "Executor", "Environment", "${EnvironmentName}" ] ], "region": "${AWS::Region}", "title": "QueuedTasks ${EnvironmentName}", "period": 300 } }, { "type": "metric", "x": 0, "y": 6, "width": 12, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "metrics": [ [ "AmazonMWAA", "RunningTasks", "Function", "Executor", "Environment", "${EnvironmentName}" ] ], "region": "${AWS::Region}", "title": "RunningTasks ${EnvironmentName}", "period": 300 } }, { "type": "metric", "x": 12, "y": 6, "width": 12, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "metrics": [ [ "AmazonMWAA", "SchedulerHeartbeat", "Function", "Scheduler", "Environment", "${EnvironmentName}" ] ], "region": "${AWS::Region}", "title": "SchedulerHeartbeat ${EnvironmentName}", "period": 300 } }, { "type": "metric", "x": 12, "y": 0, "width": 12, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "metrics": [ [ "AmazonMWAA", "TasksPending", "Function", "Scheduler", "Environment", "${EnvironmentName}" ] ], "region": "${AWS::Region}", "title": "TasksPending ${EnvironmentName}", "period": 300 } }, { "type": "metric", "x": 0, "y": 12, "width": 24, "height": 6, "properties": { "view": "timeSeries", "stacked": true, "region": "${AWS::Region}", "metrics": [ [ "AmazonMWAA", "TotalParseTime", "Function", "DAG Processing", "Environment", "${EnvironmentName}" ] ], "title": "TotalParseTime ${EnvironmentName}", "period": 300 } } ] }'

Metriken und Dashboards löschen

Wenn Sie eine Amazon MWAA-Umgebung löschen, wird auch das entsprechende Dashboard gelöscht. CloudWatch Metriken werden für fünfzehn (15) Monate gespeichert und können nicht gelöscht werden. Die CloudWatch Konsole begrenzt die Suche nach Metriken auf zwei (2) Wochen nach der letzten Erfassung einer Metrik, um sicherzustellen, dass die aktuellsten Instances für Ihre Amazon MWAA-Umgebung angezeigt werden. Weitere Informationen finden Sie in den häufig gestellten Fragen zu Amazon. CloudWatch

Als nächstes