Abrufen benutzerdefinierter Metriken mit StatsD
Sie können mithilfe des CloudWatch-Agenten und des StatsD-Protokolls weitere benutzerdefinierte Metriken aus Ihren Anwendungen oder Services abrufen. StatSD ist eine beliebte Open-Source-Lösung, mit der Metriken aus einer Vielzahl von Anwendungen gesammelt werden können. StatSD ist besonders nützlich für das Instrumentieren eigener Metriken. Ein Beispiel für die gemeinsame Verwendung von CloudWatch-Agent und StatSD finden Sie unter So überwachen Sie Ihre benutzerdefinierten Anwendungsmetriken mit Amazon CloudWatch Agent besser.
StatsD wird auf Linux-Servern und Servern mit Windows Server unterstützt. CloudWatch unterstützt das folgende StatsD-Format:
MetricName:value|type|@sample_rate|#tag1:value,tag1...
-
MetricName– Eine Zeichenfolge ohne Doppelpunkte, Balken, #-Zeichen oder @-Zeichen. -
value– Dies kann eine Ganzzahl oder Gleitkommazahl sein. -
type– Geben Siecfür Zähler,gfür Anzeige,msfür Timer,hfür Histogramm odersfür Set an. -
sample_rate– (Optional) Eine Gleitkommazahl zwischen 0 und 1. Wird nur für Zähler-, Histogramm- und Timer-Metriken verwendet. Der Standardwert lautet "1" (Erfassung über die gesamte Zeit hinweg). -
tags– (Optional) Eine durch Komma getrennte Liste der Tags.StatsD-Tags ähneln den Dimensionen in CloudWatch. Verwenden Sie für Schlüssel/Wert-Tags Doppelpunkte, z. B.env:prod.
Sie können einen beliebige StatsD-Client verwenden, der dieses Format zum Senden der Metriken an den CloudWatch-Agenten benutzt. Weitere Informationen zu einigen der verfügbaren StatsD-Clients finden Sie auf der StatsD-Client-Seite auf GitHub
Um diese benutzerdefinierten Metriken zu erfassen, fügen Sie die Zeile "statsd": {} zum Abschnitt metrics_collected der Agentenkonfigurationsdatei hinzu. Sie können diese Zeile manuell hinzufügen. Wenn Sie zum Erstellen der Konfigurationsdatei den Assistenten verwenden, geschieht dies automatisch. Weitere Informationen finden Sie unter So erstellen Sie die CloudWatch-Agent-Konfigurationsdatei.
Die StatsD-Standardkonfiguration eignet sich für die meisten Benutzer. Es gibt optionale Felder, die Sie ganz nach Bedarf zum Abschnitt statsd der Agentenkonfigurationsdatei hinzufügen können:
-
service_address– Die Service-Adresse, die der CloudWatch-Agent überwachen soll. Das Format ist. Wenn Sie die IP-Adresse weglassen, überwacht der Agent alle verfügbaren Schnittstellen. Da nur das UDP-Format unterstützt wird, müssen Sie kein UDP-Präfix anzugeben.ip:portDer Standardwert ist
:8125. -
metrics_collection_interval– Wie oft (in Sekunden) dasStatsD-Plug-in ausgeführt wird und Metriken erfasst. Der Standardwert liegt bei 10 Sekunden. Der Bereich liegt zwischen 1 und 172.000. -
metrics_aggregation_interval– Wie oft (in Sekunden) CloudWatch Metriken in einzelne Datenpunkte aggregiert. Der Standardwert liegt bei 60 Sekunden.Beispiel: Wenn
metrics_collection_interval„10“ undmetrics_aggregation_interval„60“ ist, erfasst CloudWatch alle 10 Sekunden Daten. Nach jeder Minute werden die sechs Datenmessungen der ersten Minute in einen einzelnen Datenpunkt aggregiert, der zu CloudWatch gesendet wird.Der Bereich liegt zwischen 0 und 172.000. Wenn für
metrics_aggregation_interval"0" festgelegt wird, ist die Aggregation vonStatsD-Metriken deaktiviert. -
allowed_pending_messages– Die Anzahl der UDP-Nachrichten, die in die Warteschlange aufgenommen werden dürfen. Wenn die Warteschlange voll ist, beginnt der StatsD-Server, Pakete zu verwerfen. Der Standardwert lautet 10.000. -
drop_original_metrics– Optional. Wenn Sie dasaggregation_dimensions-Feld immetrics-Abschnitt verwenden, um Metriken zu aggregierten Ergebnissen zusammenzufassen, dann sendet der Agent standardmäßig sowohl die aggregierten Metriken als auch die ursprünglichen Metriken, die für jeden Wert der Dimension getrennt sind. Wenn Sie nicht möchten, dass die ursprünglichen Metriken an CloudWatch gesendet werden, können Sie diesen Parameter mit einer Liste von Metriken angeben. Für die mit diesem Parameter angegebenen Metriken werden die Metriken nicht nach Dimensionen an CloudWatch gemeldet. Stattdessen werden nur die aggregierten Metriken gemeldet. Dadurch verringert sich die Anzahl der Metriken, die der Agent erfasst, was Ihre Kosten senkt.
Im Folgenden finden Sie ein Beispiel für den Abschnitt statsd der Agent-Konfigurationsdatei unter Verwendung des Standard-Ports und von benutzerdefinierten Sammlungs- und Aggregationsintervallen.
{ "metrics":{ "metrics_collected":{ "statsd":{ "service_address":":8125", "metrics_collection_interval":60, "metrics_aggregation_interval":300 } } } }
Anzeigen von StatsD Metriken, die vom CloudWatch-Agent importiert wurden
Nachdem Sie StatsD-Metriken in CloudWatch importiert haben, können Sie diese Metriken als Zeitreihendiagramme anzeigen und Alarme erstellen, die diese Metriken überwachen und Sie benachrichtigen können, wenn sie einen von Ihnen angegebenen Schwellenwert überschreiten. Das folgende Verfahren zeigt, wie Sie StatsD-Metriken als Zeitreihendiagramm anzeigen. Weitere Informationen zum Einrichten eines -Alarms finden Sie unter Verwenden von Amazon-CloudWatch-Alarmen.
Anzeigen von StatsD-Metriken in der CloudWatch-Konsole
-
Öffnen Sie die CloudWatch-Konsole unter https://console.aws.amazon.com/cloudwatch/
. -
Wählen Sie im Navigationsbereich Metriken aus.
-
Wählen Sie den Namespace für die vom Agent zu erfassenden Metriken. Standardmäßig ist dies CWAgent, aber Sie haben möglicherweise einen anderen Namespace in der Konfigurationsdatei des CloudWatch-Agenten angegeben.
-
Wählen Sie eine Metrikdimension aus (z. B. Per-Instance Metrics (Metriken pro Instance)).
-
Die Registerkarte All metrics zeigt alle Metriken für diese Dimension im Namespace an. Sie haben die folgenden Möglichkeiten:
-
Um eine Metrik grafisch darzustellen, müssen Sie das Kontrollkästchen neben der Metrik aktivieren. Um alle Metriken auszuwählen, aktivieren Sie das Kontrollkästchen in der Kopfzeile der Tabelle.
-
Um die Tabelle sortieren, verwenden Sie die Spaltenüberschrift.
-
Um nach Ressource zu filtern, müssen Sie zunächst die Ressourcen-ID und dann die Option Zu Suche hinzufügen auswählen.
-
Um nach Metrik zu filtern, müssen Sie den Metriknamen und anschließend Add to search (Zur Suche hinzufügen) auswählen.
-
-
(Optional) Um dieses Diagramm zu einem CloudWatch-Dashboard hinzuzufügen, wählen Sie Aktionen, Zu Dashboard hinzufügen.