No, I know the difference. LOL
The Node-RED instance that froze (at least twice) was on the other side of the planet (Ubuntu server) than the serial port on macOS at my desk.
The log message for NR was clear on a remote Ubuntu instance that it took exception to a mangled JSON string it received via MQTT.
I had a serial input that regularly failed to send the complete JSON message - an Arduino which was my early experiment with Node-RED. In fact, it was using the CISECO SRF (Slice of Pi) wireless adapters - pre cheap WiFi
I was able to trap the malformed JSON and simply drop the input (since I knew that the platform would send another message 60s later). But the serial in node didn't care at all and kept on working for several years.
This is the setting I used:
If it was a JSON node and you feed it invalid data it should show an error and will not pass on a message, but will then wait for the next message.
However it is impossible to say much more without seeing the log with the error and also seeing the startup log from the restart.
You say it froze, do you mean it crashed or was the process still active but doing nothing?
By the way, on Ubuntu you might consider running node-red as a service rather than in a terminal. That way you would be able to look back through syslog and see exactly what happened.
The recommended install script for Ubuntu and Raspbian will set that up for you.
Lena is one of the communities more experienced developers and Node-RED users so I don't think she will have any issues with understanding the running and logging of Node-RED.
However, it does seem odd that the serial in node would freeze. In my case, the malformed serialised JSON didn't cause anything to stop, it simply couldn't un-serialise the JSON so passed a string instead of an object.
Please can we move this discussion to a new topic as it is straying into a specific issue and not the general discussion about use in production.
Thanks Nick. It's hard to keep things on track at times in public forums especially when you have a lot of coding and "not forum" tasks to do. Thanks for staying active here.
As far as production, I am using Node-RED in production with MQTT on a limited scale and am very happy with the results. In fact, yesterday (by chance) there was an outage in our data center in St. Louis; and our MQTT, Node-RED, Telegram notification service performed much better than the commercial Pingdom service.
Here is a quick image of this test bed. As mentioned, the only issue which I am not happy with (in a production environment) is the serial device (depicted as "Arduino UNO" in the image). As long as I disable this node, the setup has performed very well.
Hope you find this little diagram useful, in some small way:
Here is an interesting use case with aspects of both data and physical security. It's beyond my ability to analyze its vulnerabilities, but if I were the client I might be concerned about publishing the design in such detail.
The inclusion of Node-RED with the Opto-22 Groov Epic and ST-One Controllers is both a testament and endorsement to it's suitability to the task.
Perhaps caution comes into play when considering deploying a Node-RED solution on basic PC and RaspberryPi hardware, but folks appear to be doing that with success as well.
Although anecdotal, just Friday I was speaking to an engineer at a major OPC Software Vendor who commented that they see Node-RED deployed frequently by industrial clients and even use it internally for proving out concepts and technology.
Node-Red used to collect data from disparate sources such as various PLC's, analysers, intelligent relays, power meters, solar arrays etc.etc.etc and flowing this data into a data historian is a very solid use case in an industrial setting. Having done a few of these projects over the last two years where 1000's of data points were written (continuously) I can confirm it has amazing uptime when deployed on a server class machine running Ubuntu and does not run inefficiently in terms of computational resources compared to other solutions.
This topic was automatically closed 60 days after the last reply. New replies are no longer allowed.