Övervaka Spring Boot-appar med AppDynamics Java-agenten
Kommentar
Basic-, Standard- och Enterprise-planerna kommer att vara inaktuella från och med mitten av mars 2025, med en 3-årig pensionsperiod. Vi rekommenderar att du övergår till Azure Container Apps. Mer information finns i meddelandet om azure Spring Apps-pensionering.
Standardförbrukningen och den dedikerade planen kommer att vara inaktuell från och med den 30 september 2024, med en fullständig avstängning efter sex månader. Vi rekommenderar att du övergår till Azure Container Apps. Mer information finns i Migrera Azure Spring Apps Standard-förbrukning och dedikerad plan till Azure Container Apps.
Den här artikeln gäller för: ✔️ Standardförbrukning och dedikerad (förhandsversion) ✔️ Basic/Standard ❌️ Enterprise
Den här artikeln beskriver hur du använder AppDynamics Java-agenten för att övervaka Spring Boot-program i Azure Spring Apps.
Med AppDynamics Java-agenten kan du:
- Övervakning av program
- Konfigurera AppDynamics Java Agent med hjälp av miljövariabler
- Kontrollera alla övervakningsdata från AppDynamics-instrumentpanelen
I följande video introduceras AppDynamics Java-in-processagenten.
Förutsättningar
Aktivera AppDynamics Java-in-processagenten
För hela arbetsflödet måste du:
- Aktivera AppDynamics Java-in-processagenten i Azure Spring Apps för att generera programstatistikdata.
- Anslut AppDynamics Agent till AppDynamics Controller för att samla in och visualisera data i kontrollanten.
Aktivera ett program med AppDynamics Agent med hjälp av Azure CLI
Använd följande steg för att aktivera ett program via Azure CLI.
Skapa en resursgrupp.
Skapa en instans av Azure Spring Apps.
Skapa ett program med hjälp av följande kommando. Ersätt platshållarna <...> med dina egna värden.
az spring app create \ --resource-group "<your-resource-group-name>" \ --service "<your-Azure-Spring-Apps-instance-name>" \ --name "<your-app-name>" \ --is-public true
Skapa en distribution med AppDynamics Agent med hjälp av miljövariabler.
az spring app deploy \ --resource-group "<your-resource-group-name>" \ --service "<your-Azure-Spring-Apps-instance-name>" \ --name "<your-app-name>" \ --artifact-path app.jar \ --jvm-options="-javaagent:/opt/agents/appdynamics/java/javaagent.jar" \ --env APPDYNAMICS_AGENT_APPLICATION_NAME=<your-app-name> \ APPDYNAMICS_AGENT_ACCOUNT_ACCESS_KEY=<your-agent-access-key> \ APPDYNAMICS_AGENT_ACCOUNT_NAME=<your-agent-account-name> \ APPDYNAMICS_JAVA_AGENT_REUSE_NODE_NAME=true \ APPDYNAMICS_JAVA_AGENT_REUSE_NODE_NAME_PREFIX=<your-agent-node-name> \ APPDYNAMICS_AGENT_TIER_NAME=<your-agent-tier-name> \ APPDYNAMICS_CONTROLLER_HOST_NAME=<your-AppDynamics-controller-host-name> \ APPDYNAMICS_CONTROLLER_SSL_ENABLED=true \ APPDYNAMICS_CONTROLLER_PORT=443
Azure Spring Apps förinstallerar AppDynamics Java-agenten på sökvägen /opt/agents/appdynamics/java/javaagent.jar. Du kan aktivera agenten från dina programs JVM-alternativ och sedan konfigurera agenten med hjälp av miljövariabler. Du hittar värden för dessa variabler i Övervaka Azure Spring Apps med Java Agent. Mer information om hur dessa variabler hjälper till att visa och organisera rapporter i AppDynamics-användargränssnittet finns i Nivåer och noder.
Aktivera ett program med AppDynamics Agent med hjälp av Azure Portal
Använd följande steg för att aktivera ett program via Azure Portal.
Gå till din Azure Spring Apps-instans i Azure Portal.
Välj Appar i avsnittet Inställningar i navigeringsfönstret.
Välj appen och välj sedan Konfiguration i navigeringsfönstret.
Använd fliken Allmänna inställningar för att uppdatera värden, till exempel JVM-alternativen.
Välj Miljövariabler för att lägga till eller uppdatera variablerna som används av ditt program.
Automatisera etablering
Du kan också köra en pipeline för etableringsautomatisering med hjälp av Terraform-, Bicep- eller Azure Resource Manager-mallen (ARM-mall). Den här pipelinen kan ge en fullständig praktisk upplevelse för att instrumentera och övervaka alla nya program som du skapar och distribuerar.
Automatisera etablering med Terraform
Om du vill konfigurera miljövariablerna i en Terraform-mall lägger du till följande kod i mallen och ersätter <platshållarna ...> med dina egna värden. Mer information finns i Hantera en aktiv Azure Spring Apps-distribution.
resource "azurerm_spring_cloud_java_deployment" "example" {
...
jvm_options = "-javaagent:/opt/agents/appdynamics/java/javaagent.jar"
...
environment_variables = {
"APPDYNAMICS_AGENT_APPLICATION_NAME" : "<your-app-name>",
"APPDYNAMICS_AGENT_ACCOUNT_ACCESS_KEY" : "<your-agent-access-key>",
"APPDYNAMICS_AGENT_ACCOUNT_NAME" : "<your-agent-account-name>",
"APPDYNAMICS_JAVA_AGENT_REUSE_NODE_NAME" : "true",
"APPDYNAMICS_JAVA_AGENT_REUSE_NODE_NAME_PREFIX" : "<your-agent-node-name>",
"APPDYNAMICS_AGENT_TIER_NAME" : "<your-agent-tier-name>",
"APPDYNAMICS_CONTROLLER_HOST_NAME" : "<your-AppDynamics-controller-host-name>",
"APPDYNAMICS_CONTROLLER_SSL_ENABLED" : "true",
"APPDYNAMICS_CONTROLLER_PORT" : "443"
}
}
Automatisera etablering med Bicep
Om du vill konfigurera miljövariablerna i en Bicep-fil lägger du till följande kod i filen och ersätter <platshållarna ...> med dina egna värden. Mer information finns i Microsoft.AppPlatform Spring/apps/deployments.
deploymentSettings: {
environmentVariables: {
APPDYNAMICS_AGENT_APPLICATION_NAME : '<your-app-name>'
APPDYNAMICS_AGENT_ACCOUNT_ACCESS_KEY : '<your-agent-access-key>'
APPDYNAMICS_AGENT_ACCOUNT_NAME : '<your-agent-account-name>'
APPDYNAMICS_JAVA_AGENT_REUSE_NODE_NAME : 'true'
APPDYNAMICS_JAVA_AGENT_REUSE_NODE_NAME_PREFIX : '<your-agent-node-name>'
APPDYNAMICS_AGENT_TIER_NAME : '<your-agent-tier-name>'
APPDYNAMICS_CONTROLLER_HOST_NAME : '<your-AppDynamics-controller-host-name>'
APPDYNAMICS_CONTROLLER_SSL_ENABLED : 'true'
APPDYNAMICS_CONTROLLER_PORT : '443'
}
jvmOptions: '-javaagent:/opt/agents/appdynamics/java/javaagent.jar'
}
Automatisera etablering med hjälp av en ARM-mall
Om du vill konfigurera miljövariablerna i en ARM-mall lägger du till följande kod i mallen och ersätter <platshållarna ...> med dina egna värden. Mer information finns i Microsoft.AppPlatform Spring/apps/deployments.
"deploymentSettings": {
"environmentVariables": {
"APPDYNAMICS_AGENT_APPLICATION_NAME" : "<your-app-name>",
"APPDYNAMICS_AGENT_ACCOUNT_ACCESS_KEY" : "<your-agent-access-key>",
"APPDYNAMICS_AGENT_ACCOUNT_NAME" : "<your-agent-account-name>",
"APPDYNAMICS_JAVA_AGENT_REUSE_NODE_NAME" : "true",
"APPDYNAMICS_JAVA_AGENT_REUSE_NODE_NAME_PREFIX" : "<your-agent-node-name>",
"APPDYNAMICS_AGENT_TIER_NAME" : "<your-agent-tier-name>",
"APPDYNAMICS_CONTROLLER_HOST_NAME" : "<your-AppDynamics-controller-host-name>",
"APPDYNAMICS_CONTROLLER_SSL_ENABLED" : "true",
"APPDYNAMICS_CONTROLLER_PORT" : "443"
},
"jvmOptions": "-javaagent:/opt/agents/appdynamics/java/javaagent.jar",
...
}
Granska rapporter på AppDynamics-instrumentpanelen
Det här avsnittet visar olika rapporter i AppDynamics.
Följande skärmbild visar en översikt över dina appar på AppDynamics-instrumentpanelen:
Fliken Program visar den övergripande informationen för var och en av dina appar, enligt följande skärmbilder med exempelprogram:
Följande skärmbild visar hur du kan hämta grundläggande information från instrumentpanelen För databasanrop .
Du kan också få information om de långsammaste databasanropen, enligt följande skärmbilder:
Följande skärmbild visar minnesanvändningsanalys i avsnittet Heap på sidan Minne :
Du kan också se skräpinsamlingsprocessen, som du ser i den här skärmbilden:
Följande skärmbild visar sidan Långsamma transaktioner :
Du kan definiera fler mått för JVM, som du ser i den här skärmbilden av Metric Browser:
Visa AppDynamics-agentloggar
Som standard skriver Azure Spring Apps ut loggarna på informationsnivå för AppDynamics Agent till STDOUT
. Loggarna blandas med programloggarna. Du hittar den explicita agentversionen från programloggarna.
Du kan också hämta loggarna för AppDynamics-agenten från följande platser:
- Azure Spring Apps-loggar
- Azure Spring Apps Application Insights
- Azure Spring Apps LogStream
Läs mer om uppgradering av AppDynamics Agent
AppDynamics-agenten uppgraderas regelbundet med JDK (kvartalsvis). Agentuppgradering kan påverka följande scenarier:
- Befintliga program som använder AppDynamics Agent före uppgraderingen är oförändrade, men kräver omstart eller omdistribution för att aktivera den nya versionen av AppDynamics Agent.
- Program som skapats efter uppgraderingen använder den nya versionen av AppDynamics Agent.
Konfigurera utgående trafik för virtuell nätverksinmatningsinstans
För virtuella nätverksinmatningsinstanser av Azure Spring Apps kontrollerar du att den utgående trafiken är korrekt konfigurerad för AppDynamics Agent. Mer information finns i Cisco AppDynamics SaaS-domäner och IP-intervall och kundansvar för att köra Azure Spring Apps i ett virtuellt nätverk.
Förstå begränsningarna
Information om begränsningarna för AppDynamics-agenten finns i Övervaka Azure Spring Apps med Java Agent.
Nästa steg
Använda Application Insights Java In-Process Agent i Azure Spring Apps