Good day
I have the following setup:
- Private OpenFlow instance running at integrator.mdrdigitals.com
- OpenFlow version v1.5.9
- Remote agent setup on a Windows machine that needs to talk to the OpenFlow instance in Azure cloud for data retrieval.
I had a noderedagent package running on a remote machine for more than a year without issues. About a week ago, the package just won’t start. When I run it in VSCode and in cmd on Windows, everything runs as expected and I can access NodeRed.
But the package won’t start when clicking on run in OpenFlow.
I am not sure what I am missing as I’m not getting any errors and the package runs when I manually run it. It just won’t run automatically as it did in the past. Previously the package would start automatically, even after a machine reboot. Now I need to start it manually in cmd or in VSCode to get nodered up and running and listening on port 1880.
I know this is something that I’m missing or perhaps looking in the wrong place to find the solution?
Screenshot of the agent running when opening it in cmd (as soon as I close this cmd window, everthing stops. I did already reboot the VM in Azure cloud and the remote machine and that does not resolve the issue):
When you install a remote agent, it prompts you to sign in as a user and creates a token that is valid for 1 year. So most likely you just need to renew the token.
Make sure you are NOT signed in to OpenCore in your browser, then run
npx -y @openiap/nodeagent
accept the current wsurl but press no to reuse the token, then click the link and sign in as the user you want the agent to run as.
For anyone else seeing this, we sometimes see installations where MANY remote agents have been installed and suddenly they stop working in a “wave”. To restore your service, and give you time to go through each agent and renew the token, you can enable allow_signin_with_expired_jwt
under Config .. and once you are done upgrading, disable this again.
Hi @Allan_Zimmermann
Thanks. Followed the above and renewed the token, but the nodered service is still not listening on port 1880 unless I keep the cmd command open.
Also, the “Run” and “Reinstall” buttons does not perform anything when actioned from OpenCore.
Here is a screenshot of the output received when running the above command:
If I run the following command in a cmd nodered works and I can see all of the flows. Just not sure what I’m missing that causes the agent not to run the nodered instance automatically. I even restarted the machine after running the above but the noderedagent is still not starting automatically.
I got it to run:
- I upgraded NodeJS to the latest version
- Then ran PSTools, uninstalled the agent, cleared cache and installed again
I did not run PSTools the previous time and that might’ve been the issue. Also, when I ran PSTools for the first time there were quite a few errors related to NodeJS being an old version.
Posting it here if someone else has the same issues in the future.
Thank you for letting us know.
Yes, officially we do not support anything below Node version 18, but we are only testing with Node.js 20 and 22 right now.
Also, on Windows, it’s very important you install the service using local system
(and using sudo
on Linux/macOS). That is why we use pstool’s to spawn a command line. If you do not do that, it will use your local user and the local user’s profile to store the packages and the service, and this will cause problems.