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 von Serviceereignissen
Service Events bietet automatisierte, umfassende Beobachtbarkeit für Services, die mit CloudWatch Application Signals überwacht werden. Es erfasst Fehlermetriken, Leistungsdaten auf Funktionsebene, Snapshots von Vorfällen (wenn Anfragen Latenzschwellenwerte überschreiten oder Ausnahmen auslösen) und Bereitstellungsereignisse — ohne zusätzliche Codeänderungen.
So funktionieren Serviceereignisse
Service Events sammelt die folgenden Arten von Signalen von Ihren instrumentierten Diensten:
Fehlermetriken — Per-exception-type Fehlerzahlen und -raten für jeden Vorgang, sodass Sie feststellen können, welche Ausnahmen am häufigsten auftreten und welche im Trend liegen.
Function-call Metriken — Anzahl, Dauer und Fehlerraten von Aufrufen für einzelne Funktionen in Ihrem Anwendungscode.
Vorfall-Snapshots — Detaillierte Aufzeichnungen, die ausgelöst werden, wenn eine Anfrage 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 um zusätzlichen Kontext erweitert.
Service Events wird automatisch aktiviert, wenn Sie CloudWatch Application Signals für Ihren Service aktivieren. Fehlermetriken und Ausnahmeverfolgung sind sofort aktiv. Function-call Metriken erfordern eine zusätzliche Konfiguration — Sie müssen Pakete für die Instrumentierung konfigurieren, bevor Daten zu Funktionsaufrufen erfasst werden (sieheFunktionsinstrumentierung aktivieren). Serviceereignisse können per 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/Protokollgruppen) 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 service-nameservice-name es sich um den Wert Ihrer OTEL_SERVICE_NAME Umgebungsvariablen handelt. Pro Dienst wird eine Protokollgruppe erstellt.
Die Aufnahme und Speicherung von Protokollen wird Ihnen zu den CloudWatch Standardtarifen für Logs in Rechnung gestellt.
Fehler in der Konsole anzeigen
Navigieren Sie in der CloudWatch Konsole zu Application Signals, wählen Sie Ihren Dienst und dann die Registerkarte Fehler aus. Auf dieser Registerkarte werden Ausnahmekennzahlen für Ihren Service angezeigt.
Auf der Registerkarte werden 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 die einzelnen Ausnahmetypen, der Vorgang, bei dem sie aufgetreten sind, die Anzahl der Vorkommen und die Änderung im Vergleich zur Vorperiode aufgeführt sind.
Wählen Sie eine Ausnahme aus, um Details wie den Stack-Trace, die Ausnahmemeldung und einen Link zum zugehörigen Trace aufzuschlüsseln.
Fehler werden nach Operation, Ausnahmetyp und Top-Stack-Frames gruppiert. Es wird nur der jüngste Vertreter jeder Gruppe 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 Onboarding-Aufforderung 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 mit 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 den Serviceereignissen zu filtern und zu analysieren.
Dienstereignisse auf dem MCP-Server (Model Context Protocol) von CloudWatch Application Signals
Auf die Daten von Serviceereignissen kann über den MCP-Server (Model Context Protocol) von CloudWatch Application Signals 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 Full-Stack-Traces und betroffenen Endpunkten.
Verwenden Sie den Kontext des Vorfalls (Ausnahmetypen, Aufrufpfade, Trace-IDs), um gezielte Lösungen vorzuschlagen, ohne dass Sie manuell in den Dashboards navigieren müssen.
Rufen Sie Bereitstellungsereignisse ab, um festzustellen, ob eine aktuelle Version zu einer Regression geführt hat.
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 Leistungseinbußen zu ermitteln.
Anweisungen zur Einrichtung und Verwendung finden Sie auf der Website auf dem MCP-Server von Application Signals
Konfigurieren Sie Dienstereignisse
Voraussetzungen
Um Serviceereignisse verwenden zu können, stellen Sie sicher, dass Sie über die mindestens erforderlichen Versionen der folgenden Komponenten verfügen:
-
Aktualisieren Sie das ADOT SDK — Aktualisieren Sie das Instrumentierungs-SDK für AWS Distro for OpenTelemetry (ADOT) 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 Amazon EKS-Add-on CloudWatch Observability zur Instrumentierung Ihrer Anwendungen verwenden, aktualisieren Sie auf die neueste Version des Add-ons.
-
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 unter.
Funktionen sind standardmäßig aktiviert
Wenn Sie CloudWatch Application Signals verwenden, sind die folgenden Service-Event-Signale 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 (immer ausgelöst; angereichert, wenn Sie Bereitstellungsmetadaten angeben)
Funktionsinstrumentierung (standardmäßig aktiviert, erzeugt aber keine Metriken, bis Sie Pakete für die Instrumentierung konfiguriert haben)
Die folgenden Funktionen sind optional und erfordern das Setzen von Umgebungsvariablen, um Daten zu erzeugen:
Function-level Metriken (erfordert Konfiguration
OTEL_AWS_SERVICE_EVENTS_PACKAGES_INCLUDE)Benutzerdefinierte Endpunktfilterung
Per-endpoint Latenzschwellenwerte
Allgemeine Einstellungen
| Umgebungsvariable | Standard | Description |
|---|---|---|
OTEL_AWS_SERVICE_EVENTS_ENABLED |
Folgt CloudWatch Anwendungssignalen | Schalten Sie auf Serviceereignisse um. Service Events wird automatisch aktiviert, wenn CloudWatch Application Signals aktiviert ist. Auf einstellen, false um es explizit zu deaktivieren. |
OTEL_AWS_SERVICE_EVENTS_SAMPLING_MODE |
always |
Steuert die Strategie zur Datenabtastung bei Funktionsaufrufen. Werte: always (alle Funktionsaufrufen aufzeichnen), auto (das SDK entscheidet anhand der Auslastung), never (Aufzeichnung von Funktionsaufrufen deaktivieren). Gilt nur, wenn Pakete zur Funktionsinstrumentierung konfiguriert sind. |
Funktionsinstrumentierung aktivieren
Die Funktionsinstrumentierung ist standardmäßig aktiviert, erzeugt aber keine Metriken, bis Sie konfiguriert haben, welche Pakete instrumentiert werden sollen. Stellen Sie eine Liste mit den erlaubten Paketen bereit, um mit der Erfassung von Telemetriedaten pro Funktion zu beginnen:
| Umgebungsvariable | Standard | Description |
|---|---|---|
OTEL_AWS_SERVICE_EVENTS_FUNCTION_INSTRUMENT_ENABLED |
true |
Aktiviert oder deaktiviert die Instrumentierung auf Funktionsebene. Auf setzen, um es 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. Verwenden Sie beispielsweise Include com.myapp und Exclude, com.myapp.models um Ihren Anwendungscode zu instrumentieren, aber Datenmodellklassen zu überspringen. |
Endpunktfilterung
Die Endpunktfilterung steuert, welche Endgeräte Endpunktfehlermetriken und Vorfall-Snapshots generieren. Diese Einstellungen haben keinen Einfluss auf die Funktionsinstrumentierung.
| Umgebungsvariable | Standard | Description |
|---|---|---|
OTEL_AWS_SERVICE_EVENTS_ENDPOINT_INCLUDE_PATTERNS |
Alle Endpunkte | Comma-separated globale Muster der einzubeziehenden Endpunkte. Abgestimmt mit. METHOD /route |
OTEL_AWS_SERVICE_EVENTS_ENDPOINT_EXCLUDE_PATTERNS |
Keine | Comma-separated globale Muster der auszuschließenden Endpunkte. Ausschließen hat Vorrang, wenn ein Endpunkt beiden entspricht. |
Latenzschwellenwerte
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 Vorfall-Snapshot aus. |
OTEL_AWS_SERVICE_EVENTS_LATENCY_THRESHOLDS |
Keine | Per-endpoint Latenzschwellenwerte, die den globalen Standard überschreiben. Format: METHOD /route:ms (zum BeispielGET /health:200,POST /checkout:8000). |
Ratenbegrenzung
Verwenden Sie die folgenden Umgebungsvariablen, um die Geschwindigkeit zu steuern, mit der Daten zu Serviceereignissen gesammelt und gemeldet werden.
| Umgebungsvariable | Standard | Description |
|---|---|---|
OTEL_AWS_SERVICE_EVENTS_INCIDENT_SNAPSHOT_MAX_PER_MINUTE |
100 |
Maximale Anzahl der pro Minute erfassten Vorfall-Snapshots. |
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 bereichert, sodass Sie Vorfälle und Leistungsänderungen mit bestimmten Codebereitstellungen korrelieren können.
Legen Sie die folgenden Umgebungsvariablen für Ihre Anwendungscontainer oder -prozesse fest, 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-Lauf-ID). |
OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_TIMESTAMP |
ISO 8601-Zeitstempel der Bereitstellung. |
OTEL_AWS_SERVICE_EVENTS_DEPLOYMENT_URL |
URL des Builds oder der Pipeline-Ausführung der Bereitstellung. |
Konfigurieren Sie Bereitstellungsereignisse mit GitHub Aktionen
Verwenden Sie in Ihrem GitHub Aktionsablauf die integrierten Umgebungsvariablen, um Bereitstellungsmetadaten aufzufü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 während 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 die Bereitstellungsmetadaten aufzufüllen. Fügen Sie Ihrem Bereitstellungsjob 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).