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.