HowTo: Node Red: guarde automáticamente el diario de Node Red después de iniciar Node Red (para fines de depuración)

Recientemente tuve un problema con NodeRed que provocaba que el proceso de NodeRed a veces fallara.

En realidad no es tan malo ya que se reinicia automáticamente. Por otro lado, en algún momento me molestó porque los datos en la vista del panel se perdían y se enviaban mensajes de estado cada vez.

Así que ya era hora de llegar al fondo del asunto. Primero verifiqué el diario del servicio NodeRed usando "sudo journal -f -u nodered".

Este comando muestra todos los mensajes de estado almacenados en el diario del servicio. Pero en realidad solo estaba interesado en los últimos informes antes de que se reiniciara NodeRed.

Para hacer esto, creé el flujo que se muestra a continuación. Esto guarda el contenido del diario en la carpeta “/home/pi/nodeRedLogFiles” cada vez que se reinicia NodeRed.

Si está buscando un error que provoque un reinicio, debería encontrarlo rápidamente. 🙂


Instrucciones de seguridad

Sé que las siguientes notas siempre son un poco molestas y parecen innecesarias. Desafortunadamente, muchas personas que sabían "mejor" han perdido ojos, dedos u otras cosas debido a un descuido o se lesionaron. La pérdida de datos es casi insignificante en comparación, pero incluso estos pueden ser realmente molestos. Por lo tanto, tómese cinco minutos para leer las instrucciones de seguridad. Porque incluso el proyecto más genial no vale la pena lesionarse u otros problemas.
https://www.nerdiy.de/sicherheitshinweise/

Enlaces afiliados / enlaces publicitarios

Los enlaces a las tiendas en línea enumerados aquí son los llamados enlaces de afiliados. Si hace clic en dicho enlace de afiliado y realiza una compra a través de este enlace, Nerdiy.de recibirá una comisión de la tienda en línea o el proveedor correspondiente. El precio no cambia para usted. Si realiza sus compras a través de estos enlaces, ayuda a Nerdiy.de a poder ofrecer otros proyectos útiles en el futuro. 🙂 


Requisitos

Artículos útiles:
Para que pueda instalar nuevos nodos, por supuesto, NodeRed ya debería estar instalado.
En los siguientes artículos se describe cómo preparar una RaspberryPi y luego instalar NodeRed en ella.

Los siguientes tres artículos describen lo que se debe hacer para preparar la RaspberryPi:
RaspberryPi: ¡configuración para nerdiys!
RaspberryPi – ¡La primera configuración!
RaspberryPi: controle el RaspberryPi a través de SSH

NodeRed: instalación de NodeRed en RaspberryPi

Herramienta requerida:
-No-

Material requerido:

En la siguiente lista encontrará todas las piezas que necesita para implementar este artículo.


Inicie sesión en la interfaz de configuración de NodeRed

Antes de que pueda editar su configuración de NodeRed, debe, si está activado, primero iniciar sesión en la interfaz de configuración de NodeRed.

Vista del cuadro de diálogo de inicio de sesión. Aquí debe ingresar los datos de inicio de sesión que especificó durante la configuración del inicio de sesión. Puedes encontrar información al respecto en el artículo NodeRed: configurar el inicio de sesión del usuario.

Importar código de nodo

Para probar este código, simplemente puede importar el siguiente código a su instalación de NodeRed. Puedes encontrar consejos sobre esto en el artículo. NodeRed - código de nodo de importación y exportación.

Vista del flujo de NodeRed en la vista de configuración de NodeRed.
[{"id":"185f8c16.a86d64","type":"exec","z":"2dcf0cc0.aeb894","command":"journalctl -u nodered -all","addpay":false,"append":"","useSpawn":"true","timer":"","oldrc":false,"name":"last","x":410,"y":3480,"wires":[["30e6e36b.45d3fc"],[],[]]},{"id":"30e6e36b.45d3fc","type":"function","z":"2dcf0cc0.aeb894","name":"prepare filename","func":"
var d = new Date();
var t = d.getTime();
var year = d.getFullYear();
var month = d.getMonth()+1; 
var day = d.getDate();
var hour  = d.getHours();
var minute  = d.getMinutes();

if(month.toString().length == 1) 
{
    month = '0'+month;
}

msg.filename = "/home/pi/nodeRedLogFiles/nodeRedLog_"+day+"-"+month+"-"+year+"-"+hour+":"+minute+".csv";

return msg;","outputs":1,"noerr":0,"x":610,"y":3480,"wires":[["9f916f6c.d00cb"]]},{"id":"519cb1ab.0032b","type":"inject","z":"2dcf0cc0.aeb894","name":"save last nodered-journal","topic":"","payload":"","payloadType":"date","repeat":"","crontab":"","once":true,"onceDelay":0.1,"x":210,"y":3480,"wires":[["185f8c16.a86d64"]]},{"id":"9f916f6c.d00cb","type":"file","z":"2dcf0cc0.aeb894","name":"","filename":"","appendNewline":true,"createDir":true,"overwriteFile":"false","encoding":"none","x":810,"y":3480,"wires":[[]]},{"id":"510d4143.de0cb","type":"comment","z":"2dcf0cc0.aeb894","name":"Save last journal nodered","info":"","x":170,"y":3420,"wires":[]}]

vista de tablero

Vista de las revistas recopiladas de NodeRed

Después de reiniciar NodeRed, encontrará los registros de NodeRed guardados en la carpeta “/home/pi/nodeRedLogFiles” de su RaspberryPi.

Vista de los archivos de registro de NodeRed guardados.

Diviértete con el proyecto.

Espero que todo te haya funcionado como se describe. Si no es así, o si tiene alguna pregunta o sugerencia, hágamelo saber en los comentarios. Si es necesario, lo añadiré al artículo.
Las ideas para nuevos proyectos siempre son bienvenidas. 🙂

PS Muchos de estos proyectos, especialmente los proyectos de hardware, cuestan mucho tiempo y dinero. Por supuesto que hago esto porque lo disfruto, pero si crees que es genial que comparta la información contigo, me encantaría hacer una pequeña donación al fondo del café. 🙂

Cómprame un café en ko-fi.com       

Kommentar hinterlassen

Tu dirección de correo electrónico no será publicada. Erforderliche Felder sind mit * markiert

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.