I'm new to node red
I've been programming in node.js as my professional occupation for some years.
I used to have a small automation system build with Huginn which I'm running into some performance issues from time to time so I'm investigating other options.
I don't think Apache Airflow is simple enough for my use case so I pick node red as it seems light weight and I love JavaScript in general.
However I had a rough start, I'm running into a few issues already when migrating one of the simpler workflow I have.
This workflow will retrieve some JSON data from a certain API endpoint and parse it, based on the response it will decide whether it will go one of 2 optional routes, or stop processing the event further.
Sounds simple enough right?
The first problem I run into is that my API key for making the requests can not be properly stored, I cannot find a built in solution for it so I installed a third party package node-red-contrib-credentials .
I consulted Node credentials : Node-RED but it seems intended for node developers.
The second problem I'm facing is I'm unable to debug the output msg object as a whole, I can only look at one property at a time, by default it is msg.payload, make working with http request node a big hassle because it produces msg.statusCode, msg.headers etc. as well.
The third problem is I quickly realized that I need a whole bunch of debug nodes, pairing with each existing node in order to get a clear picture of what is coming in and out of each node, not to mention it cause filtering logs a heavy labor.
The fourth time I'm surprised to find out that in a function node the node.log will not log into debug panel, only node.warn and node.error log into debug panel... But why? Not to mention the node context is resetting itself if I modify the function node, as a result I have to use flow context instead.
The last problem I had is with the mustache template, it is unclear where it works outside of template node and http request node in the URL field, granted it should be very useful elsewhere.
When compared with Huginn I never had these problems, each agent maintain its own events queue, JavaScript agents can log to its own panel with this.log and liquid template works in every field, memorized values are preserved between modifications.