Wie man Cloudwatch-Alarme für eine Lambda-Funktion auf AWS erstellt

Es gibt verschiedene Aufrufmetriken, Leistungsmetriken und Gleichzeitigkeitsmetriken, die für Lambda-Funktionen in Cloudwatch zur Überwachung zur Verfügung stehen. Aufrufmetriken sind das Ergebnis eines Aufrufs und von binärer Natur, Leistungsdetails über einen einzelnen Aufruf werden von Leistungsmetriken bereitgestellt.

  1. Invocations– Die Anzahl, wie oft der Lambda-Funktionscode ausgeführt wird, einschließlich erfolgreicher Ausführungen und erfolgloser Ausführungen, die zu einem Funktionsfehler führen.
  2. Errors– Dies gibt die Anzahl der erfolglosen Aufrufe zurück, die zu einem Funktionsfehler führen, einschließlich der vom Lambda-Code ausgelösten Ausnahmen und der von der Lambda-Laufzeit ausgelösten Ausnahmen.
  3. DeadLetterErrors– Dies gibt die Anzahl der Male zurück, in denen Lambda versucht hat, ein Ereignis an eine Dead-Letter-Warteschlange zu senden, dies aber bei asynchronen Aufrufen fehlgeschlagen ist.
  4. DestinationDeliveryFailures– Gibt zurück, wie oft Lambda versucht hat, ein Ereignis an ein Ziel zu senden, aber bei einem asynchronen Aufruf fehlgeschlagen ist.
  5. Throttles– Gibt die Anzahl der Aufrufe an, die gedrosselt werden.
  6. ProvisionedConcurrencyInvocations– Gibt an, wie oft der Lambda-Funktionscode bei bereitgestellter Gleichzeitigkeit ausgeführt wird.
  7. ProvisionedConcurrencySpilloverInvocations– Gibt an, wie oft der Lambda-Funktionscode bei Standardgleichzeitigkeit ausgeführt wird, wenn die gesamte bereitgestellte Gleichzeitigkeit in Gebrauch ist.
  8. Duration– Dies gibt die Zeit an, die der Lambda-Funktionscode mit der Verarbeitung eines Ereignisses verbringt.
  9. PostRuntimeExtensionsDuration – Dies ist die kumulative Zeit, die die Lambda-Funktionslaufzeit mit der Ausführung von Code für Erweiterungen verbringt, nachdem der Funktionscode abgeschlossen ist.
  10. IteratorAge– Dies ist das Alter des letzten Datensatzes im Ereignis für Ereignisquellen-Zuordnungen, die aus Streams lesen.
  11. ConcurrentExecutions– Dies gibt die Anzahl der Lambda-Funktionsinstanzen an, die Ereignisse verarbeiten.
  12. ProvisionedConcurrentExecutions– Dies gibt die Anzahl der Lambda-Funktionsinstanzen an, die Ereignisse bei bereitgestellter Gleichzeitigkeit verarbeiten.
  13. ProvisionedConcurrencyUtilization– Gibt den Wert von ProvisionedConcurrentExecutions geteilt durch die Gesamtmenge der bereitgestellten Gleichzeitigkeit zurück, die für eine Version oder einen Alias zugewiesen wurde.
  14. UnreservedConcurrentExecutions– Gibt die Anzahl der Ereignisse zurück, die von Lambda-Funktionen verarbeitet werden, die keine reservierte Gleichzeitigkeit haben.

Klicken Sie hier, um mehr über die für Lambda-Funktionen verfügbaren Metriken zu erfahren.

In diesem Artikel werden wir einen Alarm für die Metrik „Invocations“ erstellen, der eine Benachrichtigung an das SNS-Thema sendet, wenn er ausgelöst wird. Bevor wir fortfahren, wird vorausgesetzt, dass Sie mit Lambda-Funktionen und SNS-Themen vertraut sind. Außerdem wird davon ausgegangen, dass Sie bereits eine Lambda-Funktion und ein SNS-Topic besitzen.

Vorraussetzungen

  1. AWS-Konto (Erstellen Sie es, wenn Sie noch keines haben).
  2. Lambda-Funktion(Klicken Sie hier, um zu erfahren, wie Sie eine Lambda-Funktion zum Starten und Stoppen einer EC2-Instanz erstellen).
  3. SNS-Topic (Klicken Sie hier, um zu lernen, wie Sie ein SNS-Topic mit Cloudformation erstellen)

Was werden wir tun?

  1. Melden Sie sich bei AWS an.
  2. Erstellen Sie einen Alarm für die vorhandene Lambda-Funktion.

Anmeldung bei AWS

Klicken Sie hier, um zur AWS-Anmeldeseite zu gelangen.

Wenn Sie auf den obigen Link klicken, sehen Sie die Anmeldeseite wie folgt. Geben Sie Ihre Anmeldedaten ein, um sich bei Ihrem AWS-Konto anzumelden.

Anmeldebildschirm

Sie sehen die AWS Management Console wie folgt, wenn Sie sich erfolgreich in Ihr Konto einloggen.

AWS-Verwaltungskonsole

Erstellen eines Alarms für die bestehende Lambda-Funktion

Um einen Alarm für eine bestehende Lambda-Funktion zu erstellen, gehen Sie zum Cloudwatch Dashboard. Suchen Sie im Suchfeld oben auf dem Bildschirm nach Cloudwatch.

Cloudwatch durchsuchen

Sie sehen dann den Übersichtsbildschirm von Cloudwatch wie folgt. Klicken Sie auf „Alarme“ in der linken Leiste.

Cloudwatch Dashboard

Wenn Sie bereits Alarme in Ihrem Konto unter der ausgewählten Region haben, sehen Sie diese hier. Um einen neuen Alarm für eine bestehende Lambda-Funktion zu erstellen, klicken Sie auf die Schaltfläche „Alarm erstellen“.

Alarme Bildschirm

Sie erhalten einen Bildschirm, in dem Sie eine Metrik und Bedingungen angeben können. Klicken Sie auf die Schaltfläche „Metrik auswählen“.

Geben Sie Metrik und Bedingungen an

Hier finden Sie Dienste, für die Metriken verfügbar sind.

Metrisch wählen

Filtern Sie die Metriken nach Lambda. Jetzt sehen Sie Metriken, die für Lambda-Funktionen verfügbar sind. Klicken Sie auf „Lambda > Nach Funktionsname“.

Lambda durchsuchen

Wählen Sie eine der Metriken aus, die für die vorhandenen Lambda-Funktionen verfügbar sind. Ich fahre hier mit der Metrik „Invocations“ fort. Klicken Sie auf die Schaltfläche „Metrik auswählen“, um fortzufahren.

Metrisch wählen

Wählen Sie „Statistik“, „Schwellenwerttyp“, „Alarmbedingung“ und „Schwellenwert“. Hier wird der Alarm ausgelöst, wenn die „Sample Count“ der „Invocations“ 5 Minuten lang größer als 1 ist.

Geben Sie Metrik und Bedingungen an

Wählen Sie den Auslöser für den Alarmzustand und das Thema SNS. Hier wird der Alarm in den Zustand „In Alarm“ wechseln, wenn er ausgelöst wird, und eine Benachrichtigung an das angegebene SNS-Thema senden.

Aktionen konfigurieren

Fügen Sie dem zu erstellenden Alarm einen Namen und eine Beschreibung hinzu und klicken Sie auf die Schaltfläche „Weiter“, um fortzufahren.

Name und Beschreibung hinzufügen\

Überprüfen Sie alle Konfigurationen und klicken Sie auf die Schaltfläche „Alarm erstellen“, wenn alles gut aussieht.

Vorschau und Erstellen

Sobald der Alarm erstellt ist, können Sie ihn unter der Konsole „Alarme“ sehen. Der Status des Alarms ändert sich je nach Bedingung und Schwellenwert.

Alarm im Zustand Ok

Fazit

In diesem Artikel haben wir einen Alarm der bestehenden Lambda-Funktion erstellt, um die Metrik „Invocations“ zu überwachen. Der von uns erstellte Alarm wird ausgelöst, wenn „Anzahl der Aufrufe“ „größer“ als der Schwellenwert „1“ für „5 Minuten“ ist und sendet eine Benachrichtigung an das Abonnement im SNS-Thema. Sie können nun die gleichen Schritte verwenden, um Alarme für andere Metriken, Statistiken und Schwellenwerte zu erstellen.

Das könnte dich auch interessieren …