Configurar instantáneas de thread en el agente de APM
La función de instantáneas de subprocesos permite la recopilación de instantáneas de pila de subprocesos que se puede utilizar para un análisis detallado.
Las instantáneas de thread permiten recopilar rastreos como instantáneas de pila de subprocesos, sobrecarga de memoria de subprocesos, sobrecarga de CPU de subprocesos e impacto de gc en el rastreo. Recopila las instantáneas de la pila de subprocesos y los datos relacionados con la pila, como el estado y los bloqueos, en un intervalo específico.
Los usuarios pueden activar la recopilación de instantáneas de pila de subprocesos para realizar volcados de pila de períodos. Proporciona visibilidad de pila de código de usuario.
El intervalo de tiempo por defecto de recopilación de instantáneas de thread es de 250 ms.
Esta función está desactivada por defecto.
El agente Java de APM y el rastreador de APM soportan la recopilación de instantáneas de threads. Para obtener detalles sobre la configuración de instantáneas de threads en el rastreador de APM, consulte Configuración de instantáneas de threads en el rastreador de APM.
Requisitos
-
Las instantáneas de thread necesitan JDK8 o superior.
-
Las instantáneas de thread están soportadas en la versión APM Java Agent 1.4 o superior.
Activar instantáneas de thread
Una vez aprovisionado el agente Java de APM, puede activar la función de instantáneas de thread actualizando el archivo AgentConfig.properties
que debe estar presente en la siguiente ubicación:
$DOMAIN_HOME/oracle-apm-agent/config
- Abra el archivo
AgentConfig.properties
. - Actualice la siguiente propiedad al valor
true
:com.oracle.apm.agent.deepdive.trace.snapshots.collection.enable=true
Por defecto, el valor de la propiedad de instantáneas de thread es
false
(función desactivada).
Propiedades de Configuración
En la siguiente tabla, se muestran las propiedades de instantáneas de thread que se pueden configurar en tiempo de ejecución.
Nombre de propiedad | Descripción | Unidad | Valor por defecto | Valores soportados |
---|---|---|---|---|
com.oracle.apm.agent.deepdive.trace.snapshots.collection.enable | Activar o desactivar la recopilación de instantáneas de profundización. | Cadena | false | verdadero/falso |
com.oracle.apm.agent.deepdive.maxPercentTraceExportToCollectorPerMinute | Porcentaje máximo de rastreos entrantes por minuto para exportarlos al cobrador. | Porcentaje | 100 |
Mínimo: 1 Máximo: 100 |
com.oracle.apm.agent.deepdive.maxTraceExportToCollectorPerMinute | Número máximo de rastreos principales por minuto para exportarlos al cobrador. | Número | 200 |
Mínimo: 1 Máximo: 1500 |
com.oracle.apm.agent.deepdive.snapshotCollectionIntervalInMS | Intervalo en el que se recopilarán los datos de instantánea de thread. | Milisegundos | 250 |
Mínimo: 250 Máximo: 300000 |
com.oracle.apm.agent.deepdive.maxSnapshotsPerTrace | Número máximo de instantáneas permitidas por rastreo. | Número | 16 |
Mínimo: 1 Máximo: 16 |
com.oracle.apm.agent.deepdive.maxStackTraceDepthPerSnapshot | Máximo de marcos de rastreo de pila recopilados para cualquier thread. | Número | 256 |
Mínimo: 1 Máximo: 256 |
com.oracle.apm.agent.deepdive.logLevel | Imprima logs de buceo profundo, que sean iguales o superiores a este valor de propiedad. | Cadena | INFO |
DEPURACIÓN, INFORMACIÓN, ADVERTENCIA, GRAVE |
com.oracle.apm.agent.deepdive.maxProcessCpuUsagePercent | Uso máximo de CPU de proceso. Se recomienda mantener el uso general de CPU del proceso por debajo de este umbral. | Número | 90 |
Mínimo: 1 Máximo: 90 |
com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.minThreshold | Umbral mínimo para mantener el uso general profundo de la CPU. | Porcentaje | 3 |
Mínimo: 1 Máximo: 5 |
com.oracle.apm.agent.deepdive.deepDiveCpuUsagePercent.maxThreshold | Umbral máximo para mantener el uso general profundo de la CPU. | Porcentaje | 5 |
Mínimo: 5 Máximo: 20 |
com.oracle.apm.agent.deepdive.traceLifeInMS.minThreshold | Umbral mínimo para un rastreo. | Milisegundos | 50 |
Mínimo: 50 Máximo: 60000 |
com.oracle.apm.agent.deepdive.traceLifeInMS.maxThreshold | Umbral máximo para un rastreo. | Milisegundos | 60000 |
Mínimo: 60000 Máximo: 600000 |
Verificar instantáneas de thread
-
Para verificar que se ha inicializado la función de instantáneas de thread, compruebe el archivo log desde la siguiente ubicación:
$DOMAIN_HOME/oracle-apm-agent/deepdive/<server-name>/ApmDeepDiveAgent.log
.El archivo log debe tener el siguiente aspecto:INFO [main] <DeepDiveManager> DeepDiveManger initialized successfully.
-
Para verificar que la función de instantáneas de thread se ha configurado correctamente y que los datos se están cargando en Application Performance Monitoring, utilice la opción Vista de instantánea de Ver detalles de rastreo o período.