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.
Überwachen Sie Serviceereignisse
Service Events bietet automatische detaillierte Beobachtbarkeit für Dienste, die mit CloudWatch Anwendungssignalen überwacht werden. Es erfasst Fehlermetriken, Leistungsdaten auf Funktionsebene, Momentaufnahmen von Vorfällen (wenn Anfragen Latenzschwellenwerte überschreiten oder Ausnahmen auslösen) und Bereitstellungsereignisse — ohne zusätzliche Codeänderungen.
So funktionieren Serviceereignisse
Service Events erfasst die folgenden Arten von Signalen von Ihren instrumentierten Diensten:
Fehlermetriken — Anzahl und Häufigkeit der Per-exception-type Fehler für jeden Vorgang, anhand derer Sie ermitteln können, welche Ausnahmen am häufigsten auftreten und am häufigsten auftreten.
Function-call Metriken — Anzahl der Aufrufe, Dauer und Fehlerraten für einzelne Funktionen in Ihrem Anwendungscode.
Momentaufnahmen von Vorfällen — Detaillierte Aufzeichnungen, die ausgelöst werden, wenn eine Anforderung einen Latenzschwellenwert überschreitet oder eine Ausnahme auslöst, einschließlich Stack-Traces, Aufrufstrukturen, Anruferdetails und Betriebskontext.
Bereitstellungsereignisse — Markierungen, die beim Start der Anwendung und alle 24 Stunden ausgegeben werden und die Codebereitstellungen mit Änderungen im Dienstverhalten korrelieren. Die Anwendung gibt automatisch Bereitstellungsereignisse aus. Durch die Bereitstellung von Deployment-Metadaten (Git Commit, Deployment-ID) werden diese Ereignisse mit zusätzlichem Kontext angereichert.
Service Events wird automatisch aktiviert, wenn Sie CloudWatch Application Signals für Ihren Service aktivieren. Fehlermetriken und Ausnahme-Tracking sind sofort aktiv. Function-call Für Metriken ist eine zusätzliche Konfiguration erforderlich. Sie müssen die Pakete für die Instrumente konfigurieren, bevor Daten zu Funktionsaufrufen erfasst werden (sieheAktivieren Sie die Funktionsinstrumentierung). Service Events können durch eine Einstellung deaktiviert werden. OTEL_AWS_SERVICE_EVENTS_ENABLED=false Daten fließen vom ADOT SDK zum CloudWatch Agenten. Der Agent veröffentlicht Ereignisse in CloudWatch Logs (/aws/service-events/Loggruppen) und CloudWatch Metriken.service-name
Unterstützte Sprachen: Java, Python und Node.js.
Anmerkung
Service Events wird in Lambda-Umgebungen automatisch deaktiviert.
Datenspeicher
Service Events speichert Daten in CloudWatch Protokollen. CloudWatch veröffentlicht Serviceereignisdaten in einer Protokollgruppe mit dem Präfix/aws/application-signals/, wobei der Wert Ihrer service-nameOTEL_SERVICE_NAME Umgebungsvariablen service-name ist. Pro Dienst wird eine Protokollgruppe erstellt.
Das Aufnehmen und Speichern von Protokollen wird Ihnen zu den CloudWatch Standardtarifen für Protokolle in Rechnung gestellt.
Fehler in der Konsole anzeigen
Navigieren Sie in der CloudWatch Konsole zu Application Signals, wählen Sie Ihren Service aus und wählen Sie dann die Registerkarte Fehler. Auf dieser Registerkarte werden Ausnahmemetriken für Ihren Service angezeigt.
Auf der Registerkarte wird Folgendes angezeigt:
Ein Diagramm zur Anzahl der Ausnahmen, das die Fehlertrends im Zeitverlauf zeigt. Verwenden Sie dieses Diagramm, um zu ermitteln, welche Ausnahmetypen sich in letzter Zeit in ihrer Häufigkeit geändert haben.
Eine Tabelle, in der jeder Ausnahmetyp, der Vorgang, bei dem er aufgetreten ist, die Anzahl der Vorkommnisse und die Änderung gegenüber der Vorperiode aufgeführt sind.
Wählen Sie eine Ausnahme aus, um detaillierte Informationen wie den Stack-Trace, die Ausnahmemeldung und einen Link zum zugehörigen Trace anzuzeigen.
Die Fehler werden nach Operation, Ausnahmetyp und Top-Stack-Frames gruppiert. Nur der neueste Vertreter jeder Gruppe wird angezeigt.
Anmerkung
Um Fehlerdaten anzeigen zu können, muss mindestens eine /aws/service-events/ Protokollgruppe in Ihrem Konto vorhanden sein. Wenn keine Protokollgruppen vorhanden sind, wird auf der Registerkarte „Fehler“ eine Eingabeaufforderung angezeigt.service-name
Serviceereignisse in Protokollen anzeigen
Daten zu Serviceereignissen werden in CloudWatch Protokollen unter Protokollgruppen mit dem Präfix gespeichert/aws/service-events/. Sie können diese Daten direkt mithilfe von CloudWatch Logs Insights abfragen, um benutzerdefinierte Ansichten zu erstellen, Dashboards zu erstellen oder bestimmte Vorfälle zu untersuchen.service-name
So fragen Sie Serviceereignisse ab:
Öffnen Sie die CloudWatch Konsole und navigieren Sie zu Logs Insights.
Wählen Sie die Protokollgruppe
/aws/service-events/für Ihren Service aus.service-nameGeben Sie eine Abfrage ein, um die Daten zu Serviceereignissen zu filtern und zu analysieren.
Serviceereignisse auf dem CloudWatch Application Signals MCP (Model Context Protocol) -Server
Auf Daten zu Serviceereignissen kann über den CloudWatch Application Signals MCP-Server (Model Context Protocol) zugegriffen werden, sodass KI-Codierungsassistenten und -Agenten das Laufzeitverhalten Ihres Dienstes direkt abfragen können.
Fehlersuche
Korrelieren Sie Fehler in Ihrem Code automatisch mit Snapshots von Produktionsvorfällen, einschließlich vollständiger Stack-Traces und betroffener Endpunkte.
Verwenden Sie den Kontext des Vorfalls (Ausnahmetypen, Aufrufpfade, Trace-IDs), um gezielte Lösungen vorzuschlagen, ohne dass Sie manuell in Dashboards navigieren müssen.
Rufen Sie Bereitstellungsereignisse ab, um festzustellen, ob in einer aktuellen Version eine Regression eingeführt wurde.
Verbesserung der Leistung
Fragen Sie Leistungsdaten auf Funktionsebene ab, um Engpässe bei der Untersuchung von Latenzproblemen zu identifizieren.
Vergleichen Sie die Dauer von Funktionsaufrufen in verschiedenen Bereitstellungen, um Leistungsrückgänge zu ermitteln.
Anweisungen zur Einrichtung und Verwendung finden Sie auf dem Application Signals MCP-Server auf der Website.
Konfigurieren Sie Serviceereignisse
Voraussetzungen
Um Service Events verwenden zu können, stellen Sie sicher, dass Sie über die erforderlichen Mindestversionen der folgenden Komponenten verfügen:
-
Aktualisieren Sie das ADOT SDK — Aktualisieren Sie das AWS Distro for OpenTelemetry (ADOT) Instrumentation SDK auf die neueste Version für Ihre Sprache (Java, Python oder). Node.js
-
Aktualisieren Sie das Amazon EKS-Add-on (falls zutreffend) — Wenn Sie das CloudWatch Observability Amazon EKS-Add-on zur Instrumentierung Ihrer Anwendungen verwenden, aktualisieren Sie das Add-on auf die neueste Version.
-
Den CloudWatch Agenten aktualisieren — Aktualisieren Sie den CloudWatch Agenten auf Version
1.300069.0oder höher.
Wenn Sie Amazon EKS verwenden, finden Sie Anweisungen Anwendungen auf Amazon-EKS-Clustern aktivieren zur Einrichtung des Add-Ons.
Funktionen sind standardmäßig aktiviert
Wenn Sie CloudWatch Anwendungssignale verwenden, sind die folgenden Signale für Serviceereignisse standardmäßig aktiviert, ohne dass eine zusätzliche Konfiguration erforderlich ist:
Snapshots von Vorfällen (ausgelöst bei Ausnahmen und Verstößen gegen den Latenzschwellenwert)
Fehlermetriken (Anzahl der Fehler pro Ausnahmetyp pro Vorgang)
Bereitstellungsereignisse (werden immer ausgegeben; angereichert, wenn Sie Bereitstellungsmetadaten angeben)
Funktionsinstrumentation (standardmäßig aktiviert, erzeugt aber keine Metriken, bis Sie die Pakete für die Instrumentierung konfigurieren)
Die folgenden Funktionen sind optional und erfordern das Setzen von Umgebungsvariablen, um Daten zu erzeugen:
Function-level Metriken (muss konfiguriert
OTEL_AWS_SERVICE_EVENTS_PACKAGES_INCLUDEwerden)Benutzerdefinierte Endpunktfilterung
Per-endpoint Latenz-Schwellenwerte
Allgemeine Einstellungen
| Umgebungsvariable | Standard | Description |
|---|---|---|
OTEL_AWS_SERVICE_EVENTS_ENABLED |
Folgt CloudWatch Anwendungssignalen | Schalten Sie die Option „Serviceereignisse“ ein. Service Events wird automatisch aktiviert, wenn CloudWatch Application Signals aktiviert ist. Auf setzen, false um es explizit zu deaktivieren. |
OTEL_AWS_SERVICE_EVENTS_SAMPLING_MODE |
always |
Steuert die Strategie zur Datenerfassung bei Funktionsaufrufen. Werte: always (zeichnet alle Funktionsaufrufe auf), auto (lässt das SDK anhand der Auslastung entscheiden), never (deaktiviert die Aufzeichnung von Funktionsaufrufen). Gilt nur, wenn Funktionsinstrumentationspakete konfiguriert sind. |
Aktivieren Sie die Funktionsinstrumentierung
Die Funktionsinstrumentierung ist standardmäßig aktiviert, aber sie erzeugt keine Metriken, bis Sie konfigurieren, welche Pakete instrumentiert werden sollen. Stellen Sie eine Liste der zulässigen Pakete bereit, um mit der Erfassung der Telemetriedaten pro Funktion zu beginnen:
| Umgebungsvariable | Standard | Description |
|---|---|---|
OTEL_AWS_SERVICE_EVENTS_FUNCTION_INSTRUMENT_ENABLED |
true |
Aktiviert oder deaktiviert Instrumentierung auf Funktionsebene. Stellen Sie diese Option auf ein, um sie vollständig false zu deaktivieren. |
OTEL_AWS_SERVICE_EVENTS_PACKAGES_INCLUDE |
Keine (für Metriken erforderlich) | Comma-separated Liste der Paketpräfixe für das Instrument. Kein Platzhalter erforderlich. Zum Beispiel: Java verwendetcom.myapp, Python verwendetmyapp, Node.js verwendetsrc/myapp. |
OTEL_AWS_SERVICE_EVENTS_PACKAGES_EXCLUDE |
Keine | Comma-separated Liste der Unterpakete, die von der Instrumentierung ausgeschlossen werden sollen. Exclude hat immer Vorrang vor Include. Beispielsweise können Sie mithilfe von Include com.myapp und com.myapp.models Exclude Ihren Anwendungscode instrumentieren, Datenmodellklassen jedoch überspringen. |
Filterung von Endpunkten
Die Endpunktfilterung steuert, welche Endpunkte Endpunktfehlermetriken und Vorfall-Snapshots generieren. Diese Einstellungen wirken sich nicht auf die Funktionsinstrumentierung aus.
| Umgebungsvariable | Standard | Description |
|---|---|---|
OTEL_AWS_SERVICE_EVENTS_ENDPOINT_INCLUDE_PATTERNS |
Alle Endpunkte | Comma-separated Glob-Muster der einzuschließenden Endpunkte. Abgestimmt gegen. METHOD /route |
OTEL_AWS_SERVICE_EVENTS_ENDPOINT_EXCLUDE_PATTERNS |
Keine | Comma-separated Glob-Muster der auszuschließenden Endpunkte. Ausschließen hat Vorrang, wenn ein Endpunkt beiden entspricht. |
Latenz-Schwellenwerte
Verwenden Sie die folgenden Umgebungsvariablen, um Latenzschwellenwerte für Incident-Snapshot-Trigger zu konfigurieren.
| Umgebungsvariable | Standard | Description |
|---|---|---|
OTEL_AWS_SERVICE_EVENTS_INCIDENT_SNAPSHOT_DURATION_THRESHOLD_MS |
5000 |
Globaler Latenzschwellenwert in Millisekunden. Anfragen, die diese Dauer überschreiten, lösen einen Snapshot des Vorfalls aus. |
OTEL_AWS_SERVICE_EVENTS_LATENCY_THRESHOLDS |
Keine | Per-endpoint Latenzschwellenwerte, die den globalen Standard außer Kraft setzen. Format: METHOD /route:ms (zum BeispielGET /health:200,POST /checkout:8000). |
Ratenbegrenzung
Verwenden Sie die folgenden Umgebungsvariablen, um die Rate zu steuern, mit der Daten zu Serviceereignissen erfasst und gemeldet werden.
| Umgebungsvariable | Standard | Description |
|---|---|---|
OTEL_AWS_SERVICE_EVENTS_INCIDENT_SNAPSHOT_MAX_PER_MINUTE |
100 |
Maximale Anzahl von Snapshots von Vorfällen, die pro Minute erfasst werden. |
OTEL_AWS_SERVICE_EVENTS_INCIDENT_SNAPSHOT_MAX_SAME_ERROR |
1 |
Maximale Anzahl von Schnappschüssen für denselben Fehler pro Erfassungsfenster. |
Konfigurieren Sie Bereitstellungsereignisse
Bereitstellungsereignisse werden immer beim Start der Anwendung und alle 24 Stunden ausgelöst. Durch die Bereitstellung von Bereitstellungsmetadaten werden diese Ereignisse angereichert, sodass Sie Vorfälle und Leistungsänderungen bestimmten Codebereitstellungen zuordnen können.
Stellen Sie die folgenden Umgebungsvariablen in Ihren Anwendungscontainern oder Prozessen ein, um Bereitstellungsmetadaten bereitzustellen:
| Umgebungsvariable | Description |
|---|---|
OTEL_AWS_SERVICE_EVENTS_GIT_COMMIT_SHA |
Git Commit SHA des bereitgestellten Codes. |
OTEL_AWS_SERVICE_EVENTS_GIT_REPO_URL |
URL des Git-Repositorys. |
OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_ID |
Eindeutiger Bezeichner für die Bereitstellung (z. B. eine CI/CD Pipeline-Run-ID). |
OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_TIMESTAMP |
ISO 8601-Zeitstempel der Bereitstellung. |
OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_URL |
URL des Deployment-Builds oder der Pipeline-Ausführung. |
Konfigurieren Sie Bereitstellungsereignisse mit GitHub Aktionen
Verwenden Sie in Ihrem GitHub Aktionsworkflow die integrierten Umgebungsvariablen, um Bereitstellungsmetadaten zu füllen. Fügen Sie Ihrem Bereitstellungsschritt oder Ihrer Container-Umgebung Folgendes hinzu:
env: OTEL_AWS_SERVICE_EVENTS_GIT_COMMIT_SHA: ${{ github.sha }} OTEL_AWS_SERVICE_EVENTS_GIT_REPO_URL: ${{ github.server_url }}/${{ github.repository }} OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_ID: ${{ github.run_id }} OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_TIMESTAMP: $(date -u +%Y-%m-%dT%H:%M:%SZ) OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_URL: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}
Wenn Sie Container-Images bereitstellen, übergeben Sie diese Werte als Umgebungsvariablen in Ihrer Aufgabendefinition oder Pod-Spezifikation. Sie können sie bei der Erstellung in das Image integrieren oder sie bei der Bereitstellung über Ihre Bereitstellungskonfiguration einfügen.
Konfigurieren Sie Bereitstellungsereignisse mit GitLab CI/CD
Verwenden Sie in Ihrer GitLab CI/CD Pipeline die vordefinierten CI/CD Variablen, um Deployment-Metadaten aufzufüllen. Fügen Sie Ihrem Bereitstellungsauftrag Folgendes hinzu:
deploy: variables: OTEL_AWS_SERVICE_EVENTS_GIT_COMMIT_SHA: $CI_COMMIT_SHA OTEL_AWS_SERVICE_EVENTS_GIT_REPO_URL: $CI_PROJECT_URL OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_ID: $CI_PIPELINE_ID OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_TIMESTAMP: $(date -u +%Y-%m-%dT%H:%M:%SZ) OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_URL: $CI_PIPELINE_URL
Übergeben Sie diese Variablen bei der Bereitstellung über Ihre Container-Orchestrierungsplattform an Ihre Anwendungscontainer (z. B. als Umgebungsvariablen in Ihrer Amazon ECS-Aufgabendefinition oder Ihrem Kubernetes-Bereitstellungsmanifest).