Personalización del archivo de registro

Puede personalizar el proceso de registro para realizar un seguimiento de los mensajes y errores de ejecución de Wazi Deploy y escribirlos en el archivo de registro.

Para ello, debe especificar un argumento --logConfigFile en El comando Wazi Deploy packager y El comando Wazi Deploy generación. Si no lo hace, el proceso de registro predeterminado se aplica cuando ejecuta Wazi Deploy.

De forma predeterminada, los mensajes se graban en el archivo message.log . El proceso de registro se gestiona en un archivo logging.yml .

No puede modificar el archivo Wazi Deploy logging.yml predeterminado. Por lo tanto, si desea personalizar el proceso de registro, debe crear su propio archivo logging.yml , copiar y pegar el código siguiente y adaptarlo a sus necesidades.
version: 1

formatters:
   default:
      format: '%(asctime)s - %(levelname)-5s - %(message)s'
      datefmt: '%Y-%m-%d %H:%M:%S'
      
handlers:
   console:
      class: logging.StreamHandler
      level: INFO
      formatter: default
      stream: ext://sys.stdout
   file:
      class : logging.handlers.RotatingFileHandler
      formatter: default
      filename: message.log
      maxBytes: 1024000
      backupCount: 3
      
root:
   level: NOTSET
   handlers: [console]
   propagate: yes
   
loggers:
   log-deploy:
      level: INFO
      handlers: [file]
      propagate: no

Para entender este archivo, debe leerlo desde el final. Solo se explica la información específica de Wazi Deploy . La otra información es la información de registro estándar.

El bloque loggers contiene la información siguiente:
  • log-deploy es el nombre de registrador necesario. Si especifica otro nombre, la información de registro sólo se visualiza en la consola y no en el archivo de registro.
  • level es el nivel del registro que se graba en el archivo de registro. Los niveles que puede generar Wazi Deploy son INFO (valor predeterminado) y DEBUG. El nivel DEBUG es más detallado que el nivel INFO , ya que proporciona información de resolución de problemas.
    Nota: El nivel no se aplica a los mensajes que se muestran en la consola.
  • handlers: [file] hace referencia al manejador file que está definido en el bloque handlers .

El bloque handlers contiene el manejador file , que se define con una clase logging.handlers.RotatingFileHandler . Esto significa que cuando el tamaño del archivo de registro (filename: message.log) supera el número maxBytes , crea un segundo archivo de registro (message2.log). Cuando el tamaño del segundo registro también supera el número maxBytes , crea un tercer archivo de registro (message3.log). Tal es el propósito de backupCount: 3. Cuando el tercer archivo de registro supera el número maxBytes , reutiliza el primer archivo de registro. Este manejador de archivos rotativo impide la creación de demasiados archivos en el directorio de ejecución.

El bloque formatters contiene el formato de los mensajes que se graban en el archivo de registro. De forma predeterminada, los mensajes están formados por los elementos siguientes, separados por un guión (-):
  • %(asctime)s para los datos y la hora de la creación del mensaje.
  • %(levelname)-5s para el nivel de mensaje. Los niveles posibles se especifican en el bloque loggers .
  • %(message)s para el mensaje que explica el origen del error. Este mensaje se compone de las partes siguientes:
    1. Elemento, línea y archivo donde se ha detectado el error.
    2. El propio mensaje.
La línea siguiente es un ejemplo de un mensaje estándar:
2023-05-15 15:44:07 - INFO - deployment_method_manager.py, line 31, in load_deployment_method_from_yaml_file : \* Read the deployment method from: xxxxxx

El proceso de registro es un proceso Python . Puede consultar la documentación de Python para obtener información general y exhaustiva sobre el proceso de registro.