node.js - produccion - pm2 save
¿Cómo agregar fechas a los registros de error pm2? (4)
¿Hay alguna manera de agregar marcas de tiempo a los registros de errores en .pm2 / logs?
Noté que el comando pm2 logs
muestra registros agregados con marcas de tiempo, pero al buscar en los archivos de registro, solo hay mensajes y stacktraces sin fechas.
De acuerdo con la ayuda de la línea de comandos ( pm2 logs -h
) la ejecución de pm2 logs --timestamp
comando timestamp debe agregar la marca de tiempo a los registros. Sin embargo, parece que no afecta a los registros antiguos! Aparentemente, solo los registros nuevos se muestran con la marca de tiempo.
Para solucionar este problema, pase --log-date-format="YYYY-MM-DD HH:mm Z"
a pm2 como parámetro. Por ejemplo:
pm2 start bin/www --log-date-format="YYYY-MM-DD HH:mm Z"
Utilizando process.json
Me gusta process.json para iniciar mi aplicación por comodidad, por lo que mi process.json contiene lo siguiente:
{
"apps" : [
{
"name" : "app",
"script" : "bin/www",
"log_date_format" : "YYYY-MM-DD HH:mm Z"
}
]
}
Entonces comienzo mi aplicación simplemente ejecutando:
pm2 start process.json
Una vez hecho esto, veo que la marca de tiempo aparece simplemente ejecutando: pm2 logs
Observe que no tuve que especificar --timestamp para ver la marca de tiempo.
app (out): 2016-08-04 13:46 +01:00: My log here
Una buena lectura: http://pm2.keymetrics.io/docs/usage/log-management/
Según este problema y este compromiso , puede utilizar:
pm2 start app.js --log-date-format ''DD-MM HH:mm:ss.SSS''
donde ''DD-MM HH:mm:ss.SSS''
es cualquier formato válido de momento.
Uso PM2, pero no me importan mucho los registros. En su lugar, utilizo bunyan, que le da mucha flexibilidad para el registro. Si npm lo instala con --global , también puede usarlo como un visor de registro en vivo:
Sin embargo, esto no marca la hora de la salida de console.log. Pero si convierte a log.info()
o en cualquier otra función de registro de Bunyan obtendrá un buen registro.
Para ver los registros de pm2 en vivo con bunyan, simplemente canalícelos:
pm2 logs | bunyan
pm2 start app.js --log-date-format "YYYY-MM-DD HH:mm"