Come monitorare le app Spring Boot con Dynatrace Java OneAgent
Nota
I piani Basic, Standard ed Enterprise saranno deprecati a partire dalla metà di marzo 2025, con un periodo di ritiro di 3 anni. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere l'annuncio di ritiro di Azure Spring Apps.
Il piano Standard a consumo e dedicato sarà deprecato a partire dal 30 settembre 2024, con un arresto completo dopo sei mesi. È consigliabile eseguire la transizione ad App Azure Container. Per altre informazioni, vedere Eseguire la migrazione del consumo di Azure Spring Apps Standard e del piano dedicato alle app Azure Container.
Questo articolo si applica a: ✔️ Consumo standard e dedicato (anteprima) ✔️ Basic/Standard ❌️ Enterprise
Questo articolo illustra come usare Dynatrace OneAgent per monitorare le applicazioni Spring Boot in Azure Spring Apps.
Con Dynatrace OneAgent è possibile:
- Monitorare le app con Dynatrace OneAgent.
- Configurare Dynatrace OneAgent usando le variabili di ambiente.
- Controllare tutti i dati di monitoraggio dal dashboard Dynatrace.
Il video seguente presenta Dynatrace OneAgent.
Prerequisiti
- Interfaccia della riga di comando di Azure
- Un account Dynatrace
- Token e token del tenant Dynatrace PaaS
Attivare Dynatrace OneAgent
Le sezioni seguenti descrivono come attivare Dynatrace OneAgent.
Preparare l'ambiente di Azure Spring Apps
- Creare un'istanza di Azure Spring Apps.
- Creare un'applicazione che si vuole segnalare a Dynatrace eseguendo il comando seguente. Sostituire i segnaposto <...> con i propri valori.
az spring app create \ --resource-group <your-resource-group-name> \ --service <your-Azure-Spring-Apps-name> \ --name <your-application-name> \ --is-public true
Determinare i valori per le variabili di ambiente necessarie
Per attivare Dynatrace OneAgent nell'istanza di Azure Spring Apps, è necessario configurare quattro variabili di ambiente: DT_TENANT
, DT_TENANTTOKEN
DT_CONNECTION_POINT
, e DT_CLUSTER_ID
. Per altre informazioni, vedere Integrare OneAgent con Azure Spring Apps.
Per le applicazioni con più istanze, Dynatrace offre diversi modi per raggrupparli. DT_CLUSTER_ID
è uno dei modi. Per altre informazioni, vedere Rilevamento dei gruppi di processi.
Aggiungere le variabili di ambiente all'applicazione
È possibile aggiungere le coppie chiave/valore della variabile di ambiente all'applicazione usando il portale di Azure o l'interfaccia della riga di comando di Azure.
Opzione 1: Interfaccia della riga di comando di Azure
Per aggiungere le coppie chiave/valore usando l'interfaccia della riga di comando di Azure, eseguire il comando seguente, sostituendo i segnaposto <...> con i valori determinati nei passaggi precedenti.
az spring app deploy \
--resource-group <your-resource-group-name> \
--service <your-Azure-Spring-Apps-name> \
--name <your-application-name> \
--artifact-path app.jar \
--env \
DT_TENANT=<your-environment-ID> \
DT_TENANTTOKEN=<your-tenant-token> \
DT_CONNECTION_POINT=<your-communication-endpoint>
Opzione 2: portale di Azure
Per aggiungere le coppie chiave/valore usando il portale di Azure, seguire questa procedura:
Nell'istanza di Azure Spring Apps selezionare App nel riquadro di spostamento.
Selezionare l'applicazione dall'elenco e quindi selezionare Configurazione nel riquadro di spostamento.
Usare la scheda Variabili di ambiente per aggiungere o aggiornare le variabili usate dall'applicazione.
Automatizzare il provisioning
Con terraform, bicep o il modello di Azure Resource Manager è anche possibile eseguire una pipeline di automazione del provisioning. Questa pipeline può offrire un'esperienza pratica completa per instrumentare e monitorare tutte le nuove applicazioni create e distribuite.
Automatizzare il provisioning con Terraform
Per configurare le variabili di ambiente in un modello Terraform, aggiungere il codice seguente al modello, sostituendo i <segnaposto ...> con i propri valori. Per altre informazioni, vedere Gestire una distribuzione di App Azure Spring attive.
environment_variables = {
"DT_TENANT": "<your-environment-ID>",
"DT_TENANTTOKEN": "<your-tenant-token>",
"DT_CONNECTION_POINT": "<your-communication-endpoint>",
"DT_CLUSTER_ID": "<your-cluster-ID>"
}
Automatizzare il provisioning con un file Bicep
Per configurare le variabili di ambiente in un file Bicep, aggiungere il codice seguente al file, sostituendo i <segnaposto ...> con i propri valori. Per altre informazioni, vedere Microsoft.AppPlatform Spring/apps/deployments.
environmentVariables: {
DT_TENANT: '<your-environment-ID>'
DT_TENANTTOKEN: '<your-tenant-token>'
DT_CONNECTION_POINT: '<your-communication-endpoint>'
DT_CLUSTER_ID: '<your-cluster-ID>'
}
Automatizzare il provisioning usando un modello di Resource Manager
Per configurare le variabili di ambiente in un modello di Resource Manager, aggiungere il codice seguente al modello, sostituendo i <segnaposto ...> con i propri valori. Per altre informazioni, vedere Microsoft.AppPlatform Spring/apps/deployments.
"environmentVariables": {
"DT_TENANT": "<your-environment-ID>",
"DT_TENANTTOKEN": "<your-tenant-token>",
"DT_CONNECTION_POINT": "<your-communication-endpoint>",
"DT_CLUSTER_ID": "<your-cluster-ID>"
}
Visualizzare i report in Dynatrace
Questa sezione descrive come trovare vari report in Dynatrace.
Nota
Il menu Dynatrace e l'interfaccia utente si evolveranno gradualmente. Per questo motivo, il dashboard può essere spostato in altre sezioni del sito Web Dynatrace e gli screenshot seguenti potrebbero non riflettere la versione corrente dell'interfaccia utente.
Dopo aver aggiunto le variabili di ambiente all'applicazione, Dynatrace inizia a raccogliere i dati. Per visualizzare i report, usare il menu Dynatrace, passare a Servizi e quindi selezionare l'applicazione.
È possibile trovare il flusso del servizio dal< flusso nome-app>/Dettagli/Servizio:
È possibile trovare gli hotspot del metodo dall'hotspot <your-app-name>/Details/Method:
È possibile trovare le istruzioni database dall'analisi< del tempo di risposta/nome-app>/dettagli/risposta:
Passare quindi alla sezione Analisi multidimensionale.
È possibile trovare le istruzioni principali del database dalle istruzioni di analisi multidimensionali/Database principali:
È possibile trovare la panoramica delle eccezioni in Analisi multidimensionale/Eccezioni:
Passare quindi alla sezione Profilatura e ottimizzazione .
È possibile trovare l'analisi della CPU da Profilatura e ottimizzazione/analisi CPU:
Passare quindi alla sezione Database .
È possibile trovare Backtrace da Database/Dettagli/Backtrace:
Visualizzare i log di Dynatrace OneAgent
Per impostazione predefinita, Azure Spring Apps stampa i log a livello di informazioni di Dynatrace OneAgent su STDOUT
. I log vengono misti con i log dell'applicazione. È possibile trovare la versione esplicita dell'agente dai log applicazioni.
È anche possibile ottenere i log dell'agente Dynatrace dalle posizioni seguenti:
- Log di Azure Spring Apps
- Azure Spring Apps Application Insights
- LogStream di App Spring di Azure
È possibile applicare alcune variabili di ambiente fornite da Dynatrace per configurare la registrazione per Dynatrace OneAgent. Ad esempio, DT_LOGLEVELCON
controlla il livello di log. Il valore predefinito per DT_LOGLEVELCON
è info
. È possibile disabilitare i log dell'agente impostando su DT_LOGLEVELCON
off
. Se la registrazione è disabilitata, Dynatrace supporta prima di tutto le richieste di registrazione per diagnosticare in modo efficace eventuali problemi dell'agente. È quindi necessario riavviare l'app, necessaria per rendere effettiva la modifica. Per altri livelli di log, consultare il team di supporto di Dynatrace.
Attenzione
È consigliabile non eseguire l'override del comportamento di registrazione predefinito fornito da Azure Spring Apps for Dynatrace. In tal caso, gli scenari di registrazione descritti in precedenza vengono bloccati e i file di log potrebbero andarsi persi. Ad esempio, non è consigliabile inviare la DT_LOGLEVELFILE
variabile di ambiente alle applicazioni.
Aggiornamento di Dynatrace OneAgent
L'aggiornamento automatico Dynatrace OneAgent è disabilitato e viene aggiornato trimestralmente con JDK. L'aggiornamento dell'agente può influire sugli scenari seguenti:
- Le applicazioni esistenti che usano Dynatrace OneAgent prima dell'aggiornamento non vengono modificate, ma richiedono il riavvio o la ridistribuimento per attivare la nuova versione di Dynatrace OneAgent.
- Le applicazioni create dopo l'aggiornamento usano la nuova versione di Dynatrace OneAgent.
Configurazione del traffico in uscita dell'istanza di inserimento della rete virtuale
Per un'istanza di inserimento di rete virtuale di Azure Spring Apps, è necessario assicurarsi che il traffico in uscita per gli endpoint di comunicazione Dynatrace sia configurato correttamente per Dynatrace OneAgent. Per informazioni su come ottenere communicationEndpoints
, vedere Api di distribuzione - Ottenere informazioni sulla connettività per OneAgent. Per altre informazioni, vedere Responsabilità dei clienti per l'esecuzione di Azure Spring App in una rete virtuale.
Modello di supporto dynatrace
Per informazioni sulle limitazioni durante la distribuzione di Dynatrace OneAgent in modalità solo applicazione, vedere la sezione Piattaforme dell'applicazione cloud della piattaforma OneAgent e matrice di supporto delle funzionalità.
Passaggi successivi
Usare l'agente Java In-Process di Application Insights in Azure Spring Apps