Utilizzare APM Tracer in Micronaut
Per utilizzare APM Tracer con Micronaut, effettuare le operazioni riportate di seguito.
- Conferma versione: APM Tracer in Micronaut è supportato con APM Agent versione 1.7 o successiva.
- Aggiungere APM Tracer al progetto Maven. Per i dettagli, vedere Aggiungi tracciante APM a progetto Maven.
- Aggiungere la dipendenza in
pom.xml
.- Per Micronaut 3.x, aggiungere quanto segue:
<dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-micronaut</artifactId> <version>[1.14.0.455,)</version> </dependency>
- Per Micronaut 4.x, aggiungere quanto segue:
<dependency> <groupId>com.oracle.apm.agent.java</groupId> <artifactId>apm-java-agent-micronaut4</artifactId> <version>[1.14.0.455,)</version> </dependency>
- Per Micronaut 3.x, aggiungere quanto segue:
- L'integrazione del trace di Micronaut registra un bean io.opentracing.tracer che espone l'API Open Tracing. La dipendenza sopra riportata verrà utilizzata per configurare APM Tracer come tracciante predefinito (globale).
- Configurazione del trace per Micronaut.
APM Tracer utilizza le seguenti proprietà nel file application.yml di Micronaut:
Proprietà Predefinito Richiesto descrizione; abilitato
false Sì Proprietà per abilitare il tracciatore APM. Il valore predefinito è false. Non può essere nullo. data-upload-key
Sì Chiave di caricamento dati APM necessaria per la comunicazione di Oracle APM Service Cloud. data-upload-endpoint Sì Endpoint di caricamento dati APM necessario per la comunicazione Oracle APM Service Cloud. raccolta-metriche true No Raccoglie le metriche del server e genera report su OCI APM Service Cloud.
L'impostazione predefinita è true.
L'utente può accedere a tutte le metriche server raccolte dalla telemetria OCI.raccolta-risorse true No Raccoglie le risorse del server e genera report su OCI APM Service Cloud.
Tutte le risorse raccolte vengono utilizzate come dimensione per la query sui dati.directory di log apm-tracer-log nella directory di lavoro JVM No Percorso completo della directory di log in cui vengono scritti tutti i log APM Tracer. Se questa opzione non è impostata, viene creata la directory di log predefinita (apm-tracer-log
nella directory di lavoro della JVM.tag No Tag statiche da includere in tutti gli intervalli di trace. proprietà No Proprietà aggiuntive del tracciatore APM. Ciò consente di impostare le proprietà a livello di programmazione all'avvio di APM Tracer.
Le proprietà vengono ignorate se una chiave o un valore è nullo.
È necessario aggiungere la configurazione seguente come nodo figlio (oracleapm) della sezione tracing del file application.yml:micronaut: server: application: name: micronaut_trace_demo tracing: oracleapm: …
Ad esempio:- È necessario specificarlo in formato YAML. Il nome file predefinito è
application.yml
. Vedere l'esempio che segue.tracing: oracleapm: enabled: true data-upload-key: <data upload endpoint of your OCI domain> data-upload-endpoint: <privatedata key of your OCI domain> collect-resources: true collect-metrics: true log-directory: "/user/apm/log " tags: tag1: false tag2: 123 tag3: "stringWithQuotes" tag4: 1e4 tag5: 0.32 tag6: stringWoQuotes properties: com.oracle.apm.agent.logging.level : DEBUG com.oracle.apm.agent.key1 : value1
- È necessario specificarlo in formato YAML. Il nome file predefinito è
- Snapshot thread: il tracer OracleApm supporta la funzione Snapshot thread.
Gli snapshot thread consentono la raccolta di snapshot dello stack di thread che possono essere utilizzati per l'analisi approfondita. Per ulteriori informazioni sugli snapshot di thread, vedere Configura snapshot di thread in APM Tracer.
Per configurare istantanee di thread per Micronaut, effettuare le operazioni riportate di seguito.-
Aprire il file di configurazione
application.yml
, andare alla sezione tracing e aggiungere quanto segue:collect-deep-dive-trace-snapshot: true
-
Aggiungere la nuova sezione deep-dive-properties con le proprietà degli snapshot thread in tracing:
deep-dive-properties: com.oracle.apm.agent.deepdive.maxPercentTraceExportToCollectorPerMinute: 100 com.oracle.apm.agent.deepdive.maxTraceExportToCollectorPerMinute: 200 com.oracle.apm.agent.deepdive.snapshotCollectionIntervalInMS: 250 com.oracle.apm.agent.deepdive.maxSnapshotsPerTrace: 16 com.oracle.apm.agent.deepdive.maxStackTraceDepthPerSnapshot: 256 com.oracle.apm.agent.deepdive.logLevel: INFO com.oracle.apm.agent.deepdive.maxProcessCpuUsagePercent: 90 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.minThreshold: 3 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.maxThreshold: 5 com.oracle.apm.agent.deepdive.traceLifeInMS.minThreshold: 50 com.oracle.apm.agent.deepdive.traceLifeInMS.maxThreshold: 60000
Ad esempio:
micronaut: server: application: name: micronaut_trace_demo tracing: oracleapm: enabled: true data-upload-key: <data upload endpoint of your OCI domain> data-upload-endpoint: <privatedata key of your OCI domain> collect-resources: true collect-metrics: true log-directory: "/user/apm/log " collect-deep-dive-trace-snapshot: true deep-dive-properties: com.oracle.apm.agent.deepdive.maxPercentTraceExportToCollectorPerMinute: 100 com.oracle.apm.agent.deepdive.maxTraceExportToCollectorPerMinute: 200 com.oracle.apm.agent.deepdive.snapshotCollectionIntervalInMS: 250 com.oracle.apm.agent.deepdive.maxSnapshotsPerTrace: 16 com.oracle.apm.agent.deepdive.maxStackTraceDepthPerSnapshot: 256 com.oracle.apm.agent.deepdive.logLevel: INFO com.oracle.apm.agent.deepdive.maxProcessCpuUsagePercent: 90 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.minThreshold: 3 com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.maxThreshold: 5 com.oracle.apm.agent.deepdive.traceLifeInMS.minThreshold: 50 com.oracle.apm.agent.deepdive.traceLifeInMS.maxThreshold: 60000
-