Java-Metriken für Java-Apps in Azure Container Apps
JVM-Metriken (Java Virtual Machine) sind entscheidend für die Überwachung der Integrität und Leistung Ihrer Java-Anwendungen. Die gesammelten Daten umfassen Erkenntnisse zu Speichernutzung, Garbage Collection und JVM-Threadanzahl. Verwenden Sie die folgenden Metriken, um die Integrität und Stabilität Ihrer Anwendungen sicherzustellen.
Gesammelte Metriken
Kategorie | Titel | BESCHREIBUNG | Metrik-ID | Einheit |
---|---|---|---|---|
Java | jvm.memory.total.used |
Gesamtmenge des verwendeten Arbeitsspeichers nach Heap- oder Nicht-Heap-Vorgängen | JvmMemoryTotalUsed |
Byte |
Java | jvm.memory.total.committed |
Gesamtmenge des Arbeitsspeichers, der garantiert für Heap- oder Nicht-Heap-Vorgänge verfügbar ist | JvmMemoryTotalCommitted |
Byte |
Java | jvm.memory.total.limit |
Gesamtmenge des maximalen verwendbaren Speichers für Heap- oder Nicht-Heap-Vorgänge | JvmMemoryTotalLimit |
Byte |
Java | jvm.memory.used |
Menge des von den einzelnen Pools verwendeten Arbeitsspeichers | JvmMemoryUsed |
Byte |
Java | jvm.memory.committed |
Menge des Arbeitsspeichers, der garantiert für jeden Pool verfügbar ist | JvmMemoryCommitted |
Byte |
Java | jvm.memory.limit |
Menge des maximal verwendbaren Speichers für jeden Pool | JvmMemoryLimit |
Byte |
Java | jvm.buffer.memory.usage |
Menge des Arbeitsspeichers, der von Puffern verwendet wird, z. B. direkter Arbeitsspeicher | JvmBufferMemoryUsage |
Byte |
Java | jvm.buffer.memory.limit |
Gesamtspeicherkapazität von Puffern | JvmBufferMemoryLimit |
Byte |
Java | jvm.buffer.count |
Anzahl der Puffer im Speicherpool | JvmBufferCount |
Nicht zutreffend |
Java | jvm.gc.count |
Anzahl der JVM Garbage Collection-Aktionen | JvmGcCount |
Nicht zutreffend |
Java | jvm.gc.duration |
Dauer der JVM Garbage Collection-Aktionen | JvmGcDuration |
Millisekunden |
Java | jvm.thread.count |
Anzahl der ausgeführten Plattformthreads | JvmThreadCount |
Nicht zutreffend |
Konfiguration
Um die Sammlung von Java-Metriken für Ihre App verfügbar zu machen, müssen Sie Ihre Container-App mit einigen spezifischen Einstellungen konfigurieren.
Wenn Sie im Fenster Erstellen für Bereitstellungsquelle die Option Containerimage auswählen, haben Sie Zugriff auf stapelspezifische Features.
Wählen Sie unter Für den Entwicklungsstapel spezifische Features und für Entwicklungsstapel die Option Java aus.
Nachdem Sie den Java-Entwicklungsstapel ausgewählt haben, wird das Fenster Java-Features für Ihre App anpassen angezeigt. Wählen Sie neben der Bezeichnung Java-Features die Option JVM-Kernmetriken aus.
Es gibt zwei CLI-Optionen im Zusammenhang mit der App-Runtime und Java-Metriken:
Option | Beschreibung |
---|---|
--runtime |
Die Runtime der Container-App. Unterstützte Werte: generic und java . |
--enable-java-metrics |
Eine boolesche Option, die Java-Metriken für die App aktiviert oder deaktiviert. Gilt nur für die Java-Runtime. |
Hinweis
Der Parameter --enable-java-metrics=<true|false>
legt implizit --runtime=java
fest. Der Parameter --runtime=generic
setzt alle Java-Runtimeinformationen zurück.
Aktivieren von Java-Metriken
Sie können Java-Metriken über den Befehl create
oder update
aktivieren.
az containerapp create \
--name <CONTAINER_APP_NAME> \
--resource-group <RESOURCE_GROUP> \
--image <CONTAINER_IMAGE_LOCATION> \
--enable-java-metrics=true
Anzeigen von Java-Metriken
Führen Sie die folgenden Schritte aus, um Metrikvisualisierungen für Ihre Container-App anzuzeigen.
Öffnen Sie das Azure-Portal.
Navigieren Sie zu Ihrer Container-App.
Wählen Sie im Abschnitt Überwachung die Option Metriken aus.
Dort wird ein Diagramm mit den Metriken angezeigt, die Sie in Ihrer Anwendung nachverfolgen.
Sie können Java-Metriknamen zwar in Azure Monitor sehen, aber die Datensätze werden als leer angezeigt, wenn die Funktion nicht aktiviert ist. Informationen zum Aktivieren der Funktion finden Sie im Abschnitt Konfiguration.