githubEdit

Prometheus on Windows

For monitoring Windows with Prometheus, a Windows exporter needs to be installed which is the equivalent of Node exporterarrow-up-right for Windows. This exporter will start an HTTP endpoint, exposing metrics that will enable Prometheus to scrape them.

Windows exporter (node) installation:

Run the latest MSI installer from the below link, each release provides a .msi installer. The installer will set up the windows_exporter as a Windows service, as well as create an exception in the Windows Firewall. Node-exporter will be run on port 9182 by default after the installation.

https://github.com/prometheus-community/windows_exporter/releases

Prometheus installation:

Please follow the below steps to install Prometheus on Windows:

  • Download the prometheus.ps1 file

Invoke-WebRequest 'https://logiq-scripts.s3.ap-south-1.amazonaws.com/windows-prome.ps1' -OutFile windows-prome.ps1
  • Powershell by default uses TLS 1.0 to connect to the website, but website security requires TLS 1.2, hence run the below.

[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
  • By default, Windows does not allow execution of scripts due to the execution policy set, to enable it, run the below

  Get-ExecutionPolicy

  Run Set-ExecutionPolicy like this to switch to the unrestricted mode:

  Set-ExecutionPolicy unrestricted
  • Execute the below script, the script will download and install Prometheus as a service in the path where the script is executed.

  • Prometheus running, run the below to check

To add/ modify to enable Prometheus to scrape custom endpoints (ex: windows-exporter) make the changes on prometheus.yml file in the Prometheus directory downloaded by the script above and restart the Prometheus service

circle-info

To enable remote-write on Prometheus, include the remote-write endpoint as shown below in the Prometheus.yml configuration and restart the Prometheus service.

Last updated

Was this helpful?