Configuración del registro de Store server

Puede configurar el registro en el Store server Docker container mediante los mandatos de Run Engine.

Nota:

Cuando se trabaja con IBM para depurar problemas de proceso de solicitud, es posible que haya ocasiones en las que los componentes de rastreo de bajo nivel deban habilitarse para capturar detalles, lo que permite saber cómo se procesa la solicitud. Estos componentes de rastreo del servidor de aplicaciones de bajo nivel no conocen la intención de la solicitud ni los datos potenciales contenidos. Por consiguiente, cuando se habilitan, es posible que estos componentes de rastreo puedan incluir información confidencial en texto sin formato en el archivo de rastreo.

Es recomendable no habilitar estos tipos de componentes de rastreo en un sistema de producción e intentar simular el problema en un entorno de garantía de calidad para capturar la información adecuada. Sin embargo, si los componentes de rastreo deben estar habilitados en un sistema de producción, maneje los archivos de rastreo con precaución. Antes de enviar el rastreo, elimine los datos confidenciales que pueden estar en el rastreo antes de permitir que un tercero utilice el rastreo de diagnóstico. Además, cuando el rastreo ya no es necesario, elimine los archivos con un proceso de eliminación de datos de tipo militar. Cuando se ha detectado el problema y el componente de rastreo ya no es necesario, estos componentes de rastreo deben inhabilitarse de forma inmediata.

Procedimiento

  • Habilite el rastreo en el contenedor de destino utilizando mandatos Run Engine. Hay distintos métodos de implementación.
    Método Procedimiento
    Habilitación del rastreo en un contenedor en ejecución en el entorno local Docker. Utilice este método en el entorno de desarrollo o de control de calidad local.
    1. Especifique el contenedor de destino.
      docker exec -it container_name bash
    2. Establezca la especificación de rastreo. Por ejemplo, el siguiente mandato añade el rastreo en ServiceLogger. Para obtener una lista de especificaciones, consulte el apartado Cadenas de rastreo.
      run set-trace-specification com.ibm.commerce.foundation.logging.ServiceLogger=FINEST
    3. De forma predeterminada, el rastreo se genera en STDOUT. Si desea generar el rastreo en un archivo de registro, actualice /opt/WebSphere/Liberty/usr/servers/default/configDropins/overrides/logging.xml y sustituya traceFileName=stdout por traceFileName=trace.log. Guarde el archivo y reinicie el contenedor.
    4. Reproduzca el problema.
    5. Si no configuró el contenedor de Docker para que empiece con un montaje de volumen que preserve los registros en la máquina de host del Docker, ejecute los mandatos siguientes para que el rastreo esté disponible en el host del Docker.
      docker cp container_name:/profile/logs/trace.log /tmp/container_name_trace.log
    Crear una nueva imagen de Docker que incluya la especificación de rastreo de forma predeterminada durante el inicio. Utilice este método para crear imágenes de Docker personalizadas para establecer la especificación de rastreo de forma predeterminada. Después puede distribuir la imagen de Docker personalizada.
    1. Cree un Dockerfile para la imagen de Docker de destino.
    2. En el Dockerfile, defina el mandato Run Engine para establecer la especificación de rastreo. Por ejemplo,
      run set-trace-specification com.ibm.commerce.foundation.logging.ServiceLogger=FINEST
    3. De forma predeterminada, el rastreo se genera en STDOUT. Si desea generar el rastreo en un archivo de registro, actualice /opt/WebSphere/Liberty/usr/servers/default/configDropins/overrides/logging.xml y sustituya traceFileName=stdout por traceFileName=trace.log. Guarde el archivo y reinicie el contenedor.
    4. Cree una nueva imagen de Docker con el Dockerfile.
    Proporcionar la especificación de rastreo en un sistema avanzado con herramientas de orquestración y centro de configuración remota. Este método también incluye la especificación de rastreo de forma predeterminada durante el inicio. Las imágenes de Docker pueden aceptar un valor de parámetro TRACE_SPEC al iniciar el contenedor.
    1. Asegúrese de que ha configurado la herramienta de orquestación para recuperar parámetros de configuración del centro de configuración.
    2. En el centro de configuración (como por ejemplo Vault), defina la especificación de rastreo en el parámetro TRACE_SPEC.
    3. Ahora, cuando se desplieguen los nuevos contenedores, éstos se configurarán con sus especificaciones de rastreo.
  • Series de rastreo

    La tabla siguiente incluye las cadenas de rastreo que están disponibles específicamente para Store server Docker container. En algunos casos, es posible que tenga que habilitar las cadenas de rastreo en varios servidores para resolver totalmente un componente. Para obtener más información, consulte el MustGather en las secciones Componentes de rastreo.

    Component Serie de rastreo
    Marketing
    com.ibm.commerce.marketing.cache.*=all
    com.ibm.commerce.store.marketing.*=all
    com.ibm.commerce.foundation.logging.*=all
    Buscar
    com.ibm.commerce.foundation.*=all:
    com.ibm.commerce.rest.*=all
    Memoria caché dinámica

    Cada serie de rastreo crea algún registro adicional y puede repercutir en el rendimiento. Si necesita reducir el impacto en el rendimiento, elimine las series de rastreo empezando por el final de la lista, salvo que se requiera una serie concreta para el diagnóstico del problema inicial.

    com.ibm.commerce.component.cache.config.*=all
    com.ibm.commerce.dynacache.filter.*=all
    com.ibm.commerce.foundation.logging.*=all
    Gestión de sesiones
    com.ibm.commerce.store.foundation.session.*=all
    com.ibm.commerce.foundation.logging.*=all
    Control de acceso
    com.ibm.commerce.component.helper.*=all
    com.ibm.commerce.component.registry.*=all
    com.ibm.commerce.foundation.logging.*=all
    Protección contra vulnerabilidad Cross Site
    com.ibm.commerce.store.foundation.utils.*=all
    com.ibm.commerce.foundation.logging.*=all
    SEO
    com.ibm.commerce.component.seo.*=all
    com.ibm.commerce.store.foundation.internal.client.taglib.*=all
    com.ibm.commerce.foundation.logging.*=all
    Commerce Composer
    com.ibm.commerce.store.pagelayout.*=all
    com.ibm.commerce.store.pagelayout.internal.client.taglib.*=all
    com.ibm.commerce.foundation.logging.*=all
    Fundación de tienda
    com.ibm.commerce.component.mvc.*=all
    com.ibm.commerce.store.mvc.*=all
    com.ibm.commerce.store.servlet.*=all
    com.ibm.commerce.component.server.*=all
    com.ibm.commerce.component.internal.client.util.*=all
    com.ibm.commerce.component.rest.helper.*=all
    com.ibm.commerce.client.rest.RestClientReadEfficiencyLogger=fine
    com.ibm.commerce.foundation.logging.service.RestClientLogger=fine
    com.ibm.commerce.foundation.logging.*=all