Skip to main content
Running the NSP daemon as a Windows Service is the recommended way to operate it in any environment beyond a quick local test. As a service, the daemon starts automatically when Windows boots, runs in the background without a logged-in user session, and recovers from failures without manual intervention. You manage it through standard PowerShell commands or the Windows Services panel (services.msc).

Install the Service

To register the daemon as a Windows Service, run the following command in an Administrator PowerShell session:
You should see output like this:
The service is registered with automatic startup and failure recovery preconfigured. You only need to run install once.
If you used the GUI installer, the service is already installed and started. Run Get-Service -Name NSPDaemon to confirm its status before running install again.

Manage the Service

Use these PowerShell commands to control the service lifecycle:
You can also open the Windows Services panel for a graphical view:
In services.msc, look for NSP Daemon in the list. From there you can start, stop, or configure the service using the Windows UI.

Configure Failure Recovery

The daemon is installed with three tiers of automatic recovery. If the process exits unexpectedly, the Service Control Manager waits a short delay and restarts it: To customize these delays, run sc.exe failure as Administrator:
The reset= value (in seconds) controls how long after the last failure the failure count resets to zero. The actions= value is a /-separated list of action/delay_ms pairs for each failure tier.

Uninstall the Service

To remove the service registration, stop the daemon first, then uninstall:
This removes the service entry from the Windows Service Control Manager. It does not delete your binary or config files — see Uninstall in the Installation guide for full removal steps.

Run as a Different User Account

By default, the service runs under the Local System account. For production deployments, consider running under a dedicated low-privilege account to limit the daemon’s access to the rest of the system:
After running these commands, restart the service to apply the new account:
Grant the nsp-service account only the permissions it needs: Modify on C:\ProgramData\Nelieo is sufficient for normal operation. Avoid granting Administrator rights to the service account.

View Events in Windows Event Log

The daemon writes startup, shutdown, and error events to the Windows Event Log under the Application log, source NSPDaemon. Use these commands to read them:
Event Log entries complement the structured JSON logs written to stdout. They are especially useful when diagnosing startup failures, because Windows records the exit code and failure reason even if the daemon never finished initializing.

Run in Foreground for Development

If you need to watch logs interactively — for example, to debug why a specific application is not being detected — stop the service and run the daemon directly in your terminal:
The run command uses the same binary and the same axon.toml as the service — the only difference is that output goes to your terminal instead of the Windows Event Log, and the process stops when you close the window. Start the service again when you are done:
Do not run the daemon in foreground mode at the same time the Windows Service is running. Both processes would try to bind the same port (7842) and one will fail to start.