HCL Commerce Version 9.1.8.0 or later

Parámetro JDBC_MONITOR_ENABLED

JDBC Monitor (Java Database Connectivity) es una herramienta de depuración que le permite examinar los SQL que se ejecutan en cualquier aplicación con fines de rendimiento y resolución de problemas. Este documento proporciona los pasos de instalación para JDBC Monitor.

About this task

La instalación del parámetro JDBC Monitor Enabled implica dos pasos clave:
  • Habilite el agente de Java.
  • Habilite el nivel de rastreo apropiado para iniciar sesión.

Procedure

  1. Habilite el agente de Java.
    Note: El agente Java también se puede habilitar en el gráfico Helm.
    • Añada la JDBC_MONITOR_ENABLED de entorno al despliegue.
      - env:
      name: JDBC_MONITOR_ENABLED
      value: "true"
    • O defina la entrada en Vault:
      ${VAULT_URL}/${TENANT}/${ENVIRONMENT}/${ENVTYPE}/jdbcMonitorEnable/ts-app
      value: true
  2. Utilice el registrador para habilitar el JDBC Monitor.
    • El JDBC Monitor se controla con un registrador:
      com.hcl.commerce.monitor.jdbc.JDBCMonitor=level
      • fine: Texto de consulta y tiempo de ejecución
      • finer: fine + valores de marcador de parámetro
      • finest: finer + pila java
    • Para registrar durante el inicio, utilice la variable de entorno TRACE_SPEC:
      - env:
      name: TRACE_SPEC
      value: com.hcl.commerce.monitor.jdbc.JDBCMonitor=fine
    • O la entrada de almacenamiento correspondiente:
      ${VAULT_URL}/${TENANT}/${ENVIRONMENT}/${ENVTYPE}/traceSpecification/ts-app
    • En tiempo de ejecución, set-dynamic-trace-specification se puede utilizar el mandato run-engine:
      run set-dynamic-trace-specification com.hcl.commerce.monitor.jdbc.JDBCMonitor=fine
      << reproduce the issue >>
      run set-dynamic-trace-specification *=info

Example

Entradas de registro de ejemplo:
  • Detallado
    [7/8/21 16:06:13:860 GMT] 000000eb JDBCMonitor 1 com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement executeQuery "WSJdbcPreparedStatement executeQuery":
    { "durationMs":0.77,"query":"SELECT T1.ORDIADJUST_ID, T1.ORDADJUST_ID, T1.ORDERITEMS_ID, T1.AMOUNT, T1.OPTCOUNTER FROM ORDIADJUST T1 WHERE (T1.ORDERITEMS_ID = ?)"}
  • Más detallado
    [7/8/21 16:07:21:488 GMT] 000000eb JDBCMonitor 2 com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement executeQuery "WSJdbcPreparedStatement executeQuery":{ "durationMs":0.63,"query":"select NAME,VALUE,TYPE from ORDITEMEXTATTR where ORDERITEMS_ID=? ","parameters":
    {"1":"15007"}
  • El más detallado
    [7/8/21 16:09:00:360 GMT] 00000103 JDBCMonitor 3 com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement executeQuery "WSJdbcPreparedStatement executeQuery":{ "durationMs":1.18,"query":"select PX_RWDOPTION_ID, PX_PROMOTION_ID,ORDERS_ID, RWDCHOICE, RWDSPEC, OPTCOUNTER from PX_RWDOPTION where ORDERS_ID=? ORDER BY PX_RWDOPTION_ID","parameters":"
    {"1":"4023252"} ","stack":"["java.lang.Thread.getStackTrace(Thread.java:1164)","com.ibm.ws.rsadapter.jdbc.WSJdbcPreparedStatement.executeQuery(WSJdbcPreparedStatement.java:778)","com.ibm.commerce.base.helpers.BaseJDBCHelper.executeQuery(BaseJDBCHelper.java:408)..."