Skip to main content

Install the Wakora agent on Windows

The agent runs as a Windows service, on amd64 and arm64, and needs nothing but an elevated PowerShell to install. Windows Server 2019 and later, and the desktop editions, work the same way; PowerShell 5.1 is enough.

Install​

In PowerShell as Administrator:

$env:WAKORA_KEY = "<YOUR_TEAM_KEY>"
iwr -UseBasicParsing https://get.wakora.io/win | iex

The script downloads wakora.exe (or the arm64 build), checks its SHA-256 and verifies the publisher's ECDSA signature with .NET's own cryptography (there is no OpenSSL to depend on), installs to C:\Program Files\Wakora\wakora.exe, registers the host with the key from WAKORA_KEY, and registers the service wakora with delayed automatic start and crash recovery. An unverifiable download is deleted, never installed. Without WAKORA_KEY the script installs the service and tells you how to register later:

& 'C:\Program Files\Wakora\wakora.exe' --key <YOUR_TEAM_KEY>

The service idles until then and starts collecting the moment registration succeeds. State and identity live in C:\ProgramData\Wakora, readable only by SYSTEM and Administrators.

What the agent finds on Windows​

  • host metrics through native Windows APIs: CPU, memory, swap, every disk, network throughput, uptime;
  • processes, services (state and start type), installed programs from the registry, and listening ports with their owning process;
  • the Event Log: errors, warnings and event counts per channel for System and Application, and the event lines themselves at error and warning level;
  • IIS when W3SVC runs: sites and application pools with their state, worker processes, every site as a monitored unit with its binding hostnames, and the per-site W3C access logs on request. See Monitoring IIS;
  • SQL Server default and named instances over shared memory with Windows integrated authentication, so no SQL login is created. See Monitoring Microsoft SQL Server;
  • Hyper-V guests through WMI. See Monitoring Hyper-V;
  • .NET applications on IIS or as services, and Node.js services, get APM through the staged activation described in APM.

Verify​

Get-Service wakora
& 'C:\Program Files\Wakora\wakora.exe' doctor

The doctor checklist is the same as on Linux: binary, service, disk, identity, DNS, the outbound TCP connection, the certificate pin, the clock, authentication, data flow.

Updates and removal​

Self-update swaps the running executable by renaming and restarts the service cleanly through the Service Control Manager, so the Event Log does not record an unexpected termination. To remove the agent, run wakora uninstall from an elevated prompt; it stops and deletes the service, wipes C:\ProgramData\Wakora and schedules its own executable for deletion. See Uninstall.

Notes​

  • Kernel-level tracing (eBPF) and CPU flame graphs by process sampling do not exist on Windows, so APM there means the method-level traces of the .NET and Node.js runtimes plus their runtime metrics.
  • The agent never changes a site, a pool or a service on its own. Enabling APM on an IIS pool is a prepared PowerShell command you review and run yourself.
  • A wrapper service such as WinSW or nssm in front of a Node.js application is recognised through its parent process, so the application still shows up under its service name.

Next: First start.