# Estandar y formato para logs de automation ## Log level: - info: - Http query ejecutada correctamente - Corroboración de etapa de proceso ejecutada correctamente - warn: - Errores en la validación de una query http - error - Errores en la llamada http de un usuario - Errores en la ejecución de un proceso. ## Proceso de error - ¿Cómo sería el proceso de un error? - recibir una alarma - Diagnóstico: - Qué gatilló el proceso? - Interacción con un usuario - Ejecución de un proceso a través de la cli. - Qué proceso falló? - En qué etapa del proceso falló? - Reproducción: - Obtener los argumentos de la acción desde logs - Explicar por qué se produjo el error - Resolución: - Demostrar que con los mismo argumentos, no ocurre el error. - Resolver el proceso que anteriormente dio el error. # Estándar - basicLogger: - Los logs deben estar formateados solamente cuando se leen por consola, cuando se escribe en los archivos no debe tener formateo especial. - El archivo utilizado para loggear debe estar sin comprimir, los archivos que alcanzaron su máximo, deben comprimirse. - Api: - Se debe configurar una alarma en elastic por cualquier error que ocurra en el servidor de automation. - Debe existir un log sobre el acceso de la api llamado: access.log que utiliza el middleware accesslogger donde se imprimirá cada llamada a la api, su timestamp, loglevel, url, body, codigo de respuesta y su tiempo de respuesta. - Cuando no se cumple el schema, debe tener el log.level: 'warn' type: 'schema' - Procesos: - Cada Proceso debe generar su propio archivo de logs (ej: /logs/createNewEquip.log, /logs/createDeploymentServer.log) y cada log debe ser enviado a elastic - Cada proceso debe definir sus "etapas" como un log con un valor de 'info' para notificar a su log de su correcta ejecución. - Definir los potenciales errores con valor 'error'. - dbConnectionErrors: - Mantener los Errores de conexión a la BD