Flowfuse on Docker - Options for passing NodeRED instance logs through to host server?

Hi, we are using FlowFuse enterprise edition on-premises, hosted using Docker, and we are building some fairly complex flows to integrate data between key systems. We use a commercial monitoring and alerting platform to aggregate logs and issue alerts, and because failures in integrations are often associated with infrastructure events (e.g. an API is unavailable), we would really like log events in NodeRED to flow through to the host, so they get picked up by our aggregator and can be correlated with other events across our systems.

I have set driver.options.logPassthrough=true in the flowforge.yml file, and this passes through log events from the FlowFuse platform (e.g. nginx access logs) successfully to the host, but NodeRED instance log events do not pass through, though they are visible in the event log in FlowFuse.

Is there something simple I'm missing, or is this not currently possible?

As a work-around I'm considering building a custom logging sub-flow that interacts with an API on the log aggregator, but this is obviously more complex and existing flows would need to be re-worked to use it.

Many thanks for any suggestions.

Hi,

Can you confirm what version of FlowFuse you are using, also what the "Launcher Version" is shown on the Node-RED instance Overview page.

And just to confirm after adding the logPassthrough option you have restarted the forge container, then suspended and restarted any Instance containers (or created a new Node-RED instance)?

The changes will only be applied to new NR instances or when they are suspended/restarted.

Also the logs will not appear in the output of docker compose up but will be visible in the output of docker logs <uuid of instance> (The uuid can be found in the URL of the instance overview page)

Hi, thanks for clarifying what the expected behaviour is. I have restarted FlowFuse and suspended and started all NodeRED instances, but still I don't see anything in the docker logs for the NodeRED instances except the usual warning that the healthcheck service is not ready. I've tried creating log messages using node.error("message") in a function node, and a Debug node set to write to system console.

We are on FlowFuse 2.6.1, launcher version 2.6.0 and NR 3.0.2

Since this appears to be an issue specific to our environment, I'm happy to take this through normal support channels if you prefer - I posted here initially because I thought there might be a recommended practice that might be useful for others to know about.

Just to be clear, can you share the output you are seeing from the container? Do you see the normal Node-RED startup logs (just to note these logs will be in JSON format, not plain text)?

There was a bug fixed this morning that things written to stderr were not being output.

@stevemot Apologies, I've just found a bug that meant this was only working on Kubernetes builds.

The fix is queued up and should be in 2.7.0 that will be released next week.

OK, that's great, thanks for investigating. I'll wait for the 2.7.0 release and take it from there.