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.
Von Application Signals erfasste Metriken
Application Signals erfasst sowohl Standardanwendungsmetriken als auch Laufzeitmetriken von den Anwendungen, für die Sie es aktivieren.
Standardanwendungsmetriken beziehen sich auf die wichtigsten Aspekte der Serviceleistung, Latenz und Verfügbarkeit.
Laufzeitmetriken verfolgen Anwendungsmetriken im Zeitverlauf, einschließlich Speicherauslastung, CPU-Auslastung und Garbage Collection. Application Signals zeigt die Laufzeitmetriken im Kontext der Services an, die Sie für Application Signals aktiviert haben. Wenn Sie ein Betriebsproblem haben, kann es hilfreich sein, die Laufzeitmetriken zu beobachten, um die Ursache des Problems zu finden. Sie können beispielsweise feststellen, ob Latenzspitzen in Ihrem Service mit Spitzen in einer Laufzeitmetrik zusammenhängen.
Themen
Erfasste Standard-Anwendungsmetriken
Application Signals erfasst Standard-Anwendungsmetriken von den Services, die es entdeckt. Diese Metriken beziehen sich auf die wichtigsten Aspekte der Leistung eines Services: Latenz, Störungen und Fehler. Diese können Ihnen helfen, Probleme zu identifizieren, Leistungstrends zu überwachen und Ressourcen zu optimieren, um das allgemeine Benutzererlebnis zu verbessern.
Die folgende Tabelle listet die Metriken auf, die von Application Signals erfasst werden. Diese Metriken werden CloudWatch im ApplicationSignals Namespace gesendet.
| Metrik | Description |
|---|---|
|
|
Die Verzögerung vor der Datenübertragung beginnt, nachdem die Anforderung gestellt wurde. Einheiten: Millisekunden |
|
|
Eine Anzahl von serverseitigen HTTP 5XX-Fehlern und OpenTelemetry Span-Status-Fehlern. Einheiten: keine |
|
|
Eine Anzahl von clientseitigen HTTP-4XX-Fehlern. Dabei handelt es sich um Anforderungsfehler, die nicht durch Serviceprobleme verursacht werden. Daher betrachtet die auf den Dashboards von Application Signals angezeigte Einheiten: keine |
Die auf den Dashboards von Application Signals angezeigte Availability-Metrik wird als (1 – Faults/Gesamt)*100 berechnet. Die Gesamtzahl der Antworten umfasst alle Antworten und wird von SampleCount(Latency) abgeleitet. Erfolgreiche Antworten sind alle Antworten ohne einem 5XX-Fehler. 4XX-Antworten werden als erfolgreich behandelt, wenn Application Signals Availability berechnet.
Erfasste Dimensionen und Dimensionskombinationen
Die folgenden Dimensionen sind für jede der Standard-Anwendungsmetriken definiert. Weitere Informationen zu Dimensionen finden Sie unter Dimensionen.
Für Service-Metriken und Abhängigkeitsmetriken werden unterschiedliche Dimensionen erfasst. Wenn innerhalb der von Application Signals erkannten Services Microservice A Microservice B aufruft, wird die Anforderung an Microservice B bereitgestellt. In diesem Fall gibt Microservice A Abhängigkeitsmetriken und Microservice B Service-Metriken aus. Wenn ein Client Microservice A aufruft, stellt Microservice A die Anforderung und gibt Service-Metriken aus.
Dimensionen für Service-Metriken
Die folgenden Dimensionen werden für Service-Metriken erfasst.
| Dimension | Description |
|---|---|
|
|
Der Name des -Dienstes. Der maximale Wert beträgt 255 Zeichen. |
|
|
Der Name des API-Vorgangs oder der anderen Aktivität. Der maximale Wert beträgt 1024 Zeichen. Sie können Service-Level-Ziele für Vorgänge nur festlegen, wenn der Name des Vorgangs 194 Zeichen oder weniger lang ist. |
|
Der Name der Umgebung, in der die Services ausgeführt werden. Wenn Dienste nicht auf Amazon EKS ausgeführt werden, können Sie für Der maximale Wert beträgt 259 Zeichen. |
Wenn Sie diese Metriken in der CloudWatch Konsole anzeigen, können Sie sie mit den folgenden Dimensionskombinationen anzeigen:
-
[Environment, Service, Operation, [Latency, Error, Fault]] -
[Environment, Service, [Latency, Error, Fault]]
Dimensionen für Abhängigkeitsmetriken
Die folgenden Dimensionen werden für Abhängigkeitsmetriken erfasst:
| Dimension | Description |
|---|---|
|
|
Der Name des -Dienstes. Der maximale Wert beträgt 255 Zeichen. |
|
|
Der Name des API-Vorgangs oder eines anderen Vorgangs. Der Höchstwert beträgt 1024 Zeichen. |
|
|
Der Name des aufgerufenen Remote-Services. Der maximale Wert beträgt 255 Zeichen. |
|
|
Der Name des API-Vorgangs, der aufgerufen wird. Der Höchstwert beträgt 1024 Zeichen. |
|
|
Der Name der Umgebung, in der die Services ausgeführt werden. Wenn Services nicht auf Amazon EKS ausgeführt werden, können Sie für Der maximale Wert beträgt 259 Zeichen. |
|
|
Der Name der Umgebung, in der die Abhängigkeitsservices ausgeführt werden. Der Der maximale Wert beträgt 259 Zeichen. |
|
|
Der Name der Ressource, die durch einen Remote-Aufruf aufgerufen wird. Der Der Höchstwert beträgt 1024 Zeichen. |
|
|
Der Typ der Ressource, die durch einen Remote-Aufruf aufgerufen wird. Nur erforderlich, wenn Der Höchstwert beträgt 1024 Zeichen. |
Wenn Sie diese Metriken in der CloudWatch Konsole anzeigen, können Sie sie mit den folgenden Dimensionskombinationen anzeigen:
Wird auf Amazon-EKS-Clustern ausgeführt
-
[Environment, Service, Operation, RemoteService, RemoteOperation, RemoteEnvironment, RemoteResourceIdentifier, RemoteResourceType, [Latency, Error, Fault]] -
[Environment, Service, Operation, RemoteService, RemoteOperation, RemoteEnvironment, [Latency, Error, Fault]] -
[Environment, Service, Operation, RemoteService, RemoteOperation, RemoteResourceIdentifier, RemoteResourceType, [Latency, Error, Fault]] -
[Environment, Service, Operation, RemoteService, RemoteOperation, [Latency, Error, Fault]] -
[Environment, Service, RemoteService, RemoteEnvironment, [Latency, Error, Fault]] -
[Environment, Service, RemoteService, [Latency, Error, Fault]] -
[Environment, Service, RemoteService, RemoteOperation, RemoteEnvironment, RemoteResourceIdentifier, RemoteResourceType, [Latency, Error, Fault]] -
[Environment, Service, RemoteService, RemoteOperation, RemoteEnvironment, [Latency, Error, Fault]] -
[Environment, Service, RemoteService, RemoteOperation, RemoteResourceIdentifier, RemoteResourceType, [Latency, Error, Fault]] -
[Environment, Service, RemoteService, RemoteOperation, [Latency, Error, Fault]] -
[RemoteService [Latency, Error, Fault]] -
[RemoteService, RemoteResourceIdentifier, RemoteResourceType [Latency, Error, Fault]]
Laufzeitmetriken
Application Signals verwendet das AWS Distro for OpenTelemetry SDK, um automatisch OpenTelemetry kompatible Metriken aus Ihren Java- und Python-Anwendungen zu sammeln. Um Laufzeit-Metriken zu erfassen, müssen Sie die folgenden Anforderungen erfüllen:
Ihr CloudWatch Agent muss eine Version
1.300049.1oder eine neuere Version haben.Wenn Sie das Amazon CloudWatch Observability EKS-Add-on verwenden, muss es eine Version
2.30-eksbuild.1oder höher sein. Wenn Sie das Add-on aktualisieren, müssen Sie Ihre Anwendungen neu starten.Für Java-Anwendungen müssen Sie das AWS Distro for OpenTelemetry SDK for Java
1.32.5oder eine neuere Version ausführen.Für Python-Anwendungen müssen Sie das AWS Distro for OpenTelemetry SDK für Python
0.7.0oder eine neuere Version ausführen.Für .NET-Anwendungen müssen Sie das AWS Distro for OpenTelemetry SDK for .Net
1.6.0oder eine neuere Version ausführen.
Laufzeitmetriken werden für Node.js-Anwendungen nicht erfasst.
Laufzeitmetriken sind Teil der Kosten für Application Signals. Weitere Informationen zur CloudWatch Preisgestaltung finden Sie unter CloudWatch Amazon-Preise
Anmerkung
Bekannte Probleme
Es ist bekannt, dass die Erfassung von Laufzeit-Metriken in der Java-SDK-Version v1.32.5 nicht mit Anwendungen funktioniert, die Wildfly verwenden JBoss . Dieses Problem erstreckt sich auf das Amazon CloudWatch Observability EKS-Add-on und betrifft Versionen 2.3.0-eksbuild.1 bis2.6.0-eksbuild.1. Das Problem wurde in der Java SDK-Version v1.32.6 und der Amazon CloudWatch Observability EKS-Add-On-Version v3.0.0-eksbuild.1 behoben.
Wenn Sie betroffen sind, aktualisieren Sie entweder die Java SDK-Version oder deaktivieren Sie die Erfassung Ihrer Laufzeitmetriken, indem Sie die Umgebungsvariable OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED=false zu Ihrer Anwendung hinzufügen.
Java-Laufzeit-Metriken
Application Signals erfasst die folgenden JVM-Metriken von Java-Anwendungen, die Sie für Application Signals aktivieren. Alle Laufzeitmetriken werden CloudWatch an den ApplicationSignals Namespace gesendet und zusammen mit dem Environment Dimensionssatz Service und erfasst.
| Metrikname | Description | Aussagekräftige Statistiken |
|---|---|---|
|
|
Aggregierte Metrik für die Dauer von JVM-Garbage-Collection-Aktionen. Einheit: Millisekunden |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Aggregierte Metrik für die Dauer von JVM-Garbage-Collection-Aktionen der alten Generation. Nur in G1 verfügbar. Einheit: Millisekunden |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Aggregierte Metrik für die Dauer der JVM-Garbage-Collection-Aktionen der jungen Generation. Nur in G1 verfügbar. Einheit: Millisekunden |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Aggregierte Metrik für die Anzahl der JVM-Garbage-Collection-Aktionen. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Aggregierte Metrik für die Anzahl der JVM-Garbage-Collection-Aktionen der alten Generation. Nur in G1 verfügbar. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Aggregierte Metrik für die Anzahl der JVM-Garbage-Collection-Aktionen der jungen Generation. Nur in G1 verfügbar. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die Menge des verwendeten Heap-Arbeitsspeichers. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Menge des verwendeten Arbeitsspeichers, gemessen nach dem letzten Garbage-Collection-Ereignis in diesem Pool. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Gesamtzahl des von der alten Generation verwendeten Arbeitsspeichers. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Menge des Arbeitsspeicher-Heaps, die vom Survivor Space verwendet wird. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Menge des vom Eden Space verwendeten Arbeitsspeichers Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Menge des verwendeten Non-Heap-Arbeitsspeichers. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Anzahl der ausgeführten Threads, einschließlich Daemon- und Nicht-Daemon-Threads. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die Anzahl der geladenen Klassen. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die vom Prozess verwendete CPU-Zeit, wie von der JVM gemeldet. Einheit: Keine (Nanosekunden) |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die zuletzt vom Prozess verwendete CPU, wie von der JVM gemeldet. Einheit: keine |
Durchschnitt, Minimum, Maximum |
Python-Laufzeitmetriken
Application Signals sammelt die folgenden Metriken aus Python-Anwendungen, die Sie für Application Signals aktivieren. Alle Laufzeitmetriken werden CloudWatch an den ApplicationSignals Namespace gesendet und mit dem Environment Dimensionssatz Service und gesammelt.
| Metrikname | Description | Aussagekräftige Statistiken |
|---|---|---|
|
|
Die Gesamtzahl von Objekten, die aktuell verfolgt werden. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die Anzahl der Objekte, die derzeit in Generation 0 verfolgt werden. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die Anzahl der Objekte, die derzeit in Generation 1 verfolgt werden. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die Anzahl der Objekte, die derzeit in Generation 2 verfolgt werden. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die Menge an virtuellem Speicher, die der Prozess verwendet. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Gesamtmenge des vom Prozess verwendeten physischen Speichers ohne Swapping. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Gesamtzahl der Threads, die aktuell vom Prozess verwendet werden. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die vom Prozess genutzte CPU-Zeit. Einheit: Sekunden |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die CPU-Auslastung des Prozesses. Einheit: keine |
Durchschnitt, Minimum, Maximum |
.Net-Laufzeitmetriken
Application Signals sammelt die folgenden Metriken von .Net-Anwendungen, die Sie für Application Signals aktivieren. Alle Laufzeitmetriken werden CloudWatch an den ApplicationSignals Namespace gesendet und mit dem Environment Dimensionssatz Service und gesammelt.
| Metrikname | Description | Aussagekräftige Statistiken |
|---|---|---|
|
|
Die Gesamtzahl der Garbage-Collection-Metriken, die in Generation 0 seit Beginn des Prozesses erfasst wurden. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die Gesamtzahl der Garbage-Collection-Metriken, die in Generation 1 seit Beginn des Prozesses erfasst wurden. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die Gesamtzahl der Garbage-Collection-Metriken, die in Generation 2 seit Beginn des Prozesses erfasst wurden. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die gesamte Zeit, die seit dem Start des Prozesses bei der Garbage Collection angehalten wurde. Einheit: keine |
Summe, Durchschnitt, Minimum, Maximum |
|
|
Die Heap-Größe (einschließlich Fragmentierung) der Generation 0, die bei der letzten Garbage Collection beobachtet wurde. AnmerkungDiese Metrik ist erst nach Beendigung der ersten Garbage Collection verfügbar. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Heap-Größe (einschließlich Fragmentierung) der Generation 1, die bei der letzten Garbage Collection beobachtet wurde. AnmerkungDiese Metrik ist erst nach Beendigung der ersten Garbage Collection verfügbar. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Heap-Größe (einschließlich Fragmentierung) der Generation 2, die bei der letzten Garbage Collection beobachtet wurde. AnmerkungDiese Metrik ist erst nach Beendigung der ersten Garbage Collection verfügbar. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Heap-Größe des großen Objekts (einschließlich Fragmentierung), die bei der letzten Garbage Collection beobachtet wurde. AnmerkungDiese Metrik ist erst nach Beendigung der ersten Garbage Collection verfügbar. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Heap-Größe des fixierten Objekts (einschließlich Fragmentierung), die bei der letzten Garbage Collection beobachtet wurde. AnmerkungDiese Metrik ist erst nach Beendigung der ersten Garbage Collection verfügbar. Einheit: Byte |
Durchschnitt, Minimum, Maximum |
|
|
Die Anzahl der Thread-Pool-Threads, die derzeit existieren. Einheit: keine |
Durchschnitt, Minimum, Maximum |
|
|
Die Anzahl der Arbeitselemente, die sich derzeit in der Warteschlange befinden, um vom Thread-Pool verarbeitet zu werden. Einheit: keine |
Durchschnitt, Minimum, Maximum |
Deaktivierung der Erfassung von Laufzeitmetriken
Laufzeitmetriken werden standardmäßig für Java- und Python-Anwendungen erfasst, die für Application Signals aktiviert sind. Wenn Sie die Erfassung dieser Metriken deaktivieren möchten, folgen Sie den Anweisungen in diesem Abschnitt für Ihre Umgebung.
Amazon EKS
Um Laufzeitmetriken in Amazon-EKS-Anwendungen auf Anwendungsebene zu deaktivieren, fügen Sie Ihrer Workload-Spezifikation die folgende Umgebungsvariable hinzu.
env: - name: OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED value: "false"
Um Laufzeitmetriken in Amazon EKS-Anwendungen auf Cluster-Ebene zu deaktivieren, wenden Sie die Konfiguration auf die erweiterte Konfiguration Ihres Amazon CloudWatch Observability EKS-Add-ons an.
{ "agent": { "config": { "traces": { "traces_collected": { "application_signals": { } } }, "logs": { "metrics_collected": { "application_signals": { } } } }, "manager": { "autoInstrumentationConfiguration": { "java": { "runtime_metrics": { "enabled": false } }, "python": { "runtime_metrics": { "enabled": false } }, "dotnet": { "runtime_metrics": { "enabled": false } } } } } }
Amazon ECS
Um Laufzeitmetriken in Amazon-ECS-Anwendungen zu deaktivieren, fügen Sie die Umgebungsvariable OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED=false in der neuen Version der Aufgabendefinition hinzu und stellen Sie die Anwendung erneut bereit.
EC2
Um Laufzeitmetriken in Amazon-EC2-Anwendungen zu deaktivieren, fügen Sie die Umgebungsvariable OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED=false hinzu, bevor die Anwendung gestartet wird.
Kubernetes
Um Laufzeitmetriken in Kubernetes-Anwendungen auf Anwendungsebene zu deaktivieren, fügen Sie Ihrer Workload-Spezifikation die folgende Umgebungsvariable hinzu.
env: - name: OTEL_AWS_APPLICATION_SIGNALS_RUNTIME_ENABLED value: "false"
Verwenden Sie Folgendes, um Laufzeitmetriken in Kubernetes-Anwendungen auf Clusterebene zu deaktivieren:
helm upgrade ... \ --set-string manager.autoInstrumentationConfiguration.java.runtime_metrics.enabled=false \ --set-string manager.autoInstrumentationConfiguration.python.runtime_metrics.enabled=false \ -\-set-string manager.autoInstrumentationConfiguration.dotnet.runtime_metrics.enabled=false