Skip to main content
Version: 1.37.x

Windows machine monitoring with Netdata

This module will monitor one or more Windows machines, using the windows_exporter.

The module collects metrics from the following collectors:

Requirements

Netdata monitors Windows hosts by utilizing the Prometheus exporter for Windows machines, a native Windows agent running on each host.

To quickly test Netdata directly on a Windows machine, you can use the Netdata MSI installer. The installer runs Netdata in a custom WSL deployment. WSL was not designed for production environments, so we do not recommend using the installer in production.

For production use, you need to install Netdata on one or more nodes running Linux:

  • Install the latest Prometheus exporter for Windows on every Windows host you want to monitor.
  • Get the installation commands from Netdata Cloud and install Netdata on one or more Linux nodes.
  • Configure each Netdata instance to collect data remotely, from several Windows hosts. Just add one job for each host to wmi.conf, as shown in the configuration section.
  • [Optional][Disable all plugins](/docs/configure/common-changes#disable-a-collector-or-plugin) except for go.d in netdata.conf, so that you only see Windows metrics.
  • [Optional] Set up replication, for high availability.

Automated charts and alerts for your entire Windows infrastructure will be automatically generated. Each Windows host (data collection job) will be identifiable as an "instance" in the Netdata Cloud charts.

Metrics

All metrics have "wmi." prefix.

MetricScopeDimensionsUnits
cpu_utilization_totalglobaldpc, user, privileged, interruptpercentage
cpu_core_utilizationcpu coredpc, user, privileged, interruptpercentage
cpu_core_interruptscpu coreinterruptsinterrupts/s
cpu_core_dpcscpu coredpcsdpcs/s
cpu_core_cstatecpu corec1, c2, c3percentage
memory_utilizationglobalavailable, usedbytes
memory_utilizationglobalavailable, usedKiB
memory_page_faultsglobalpage_faultsevents/s
memory_swap_utilizationglobalavailable, usedbytes
memory_swap_operationsglobalread, writeoperations/s
memory_swap_pagesglobalread, writtenpages/s
memory_cachedglobalcachedKiB
memory_cache_faultsglobalcache_faultsevents/s
memory_system_poolglobalpaged, non-pagedbytes
logical_disk_utilizationlogical diskfree, usedbytes
logical_disk_bandwidthlogical diskread, writebytes/s
logical_disk_operationslogical diskreads, writesoperations/s
logical_disk_latencylogical diskread, writeseconds
net_nic_bandwidthnetwork devicereceived, sentkilobits/s
net_nic_packetsnetwork devicereceived, sentpackets/s
net_nic_errorsnetwork deviceinbound, outbounderrors/s
net_nic_discardednetwork deviceinbound, outbounddiscards/s
tcp_conns_establishedglobalipv4, ipv6connections
tcp_conns_activeglobalipv4, ipv6connections/s
tcp_conns_passiveglobalipv4, ipv6connections/s
tcp_conns_failuresglobalipv4, ipv6failures/s
tcp_conns_resetsglobalipv4, ipv6resets/s
tcp_segments_receivedglobalipv4, ipv6segments/s
tcp_segments_sentglobalipv4, ipv6segments/s
tcp_segments_retransmittedglobalipv4, ipv6segments/s
os_processesglobalprocessesnumber
os_usersglobalusersusers
os_visible_memory_usageglobalfree, usedbytes
os_paging_files_usageglobalfree, usedbytes
system_threadsglobalthreadsnumber
system_uptimeglobaltimeseconds
logon_type_sessionsglobalsystem, interactive, network, batch, service, proxy, unlock, network_clear_text, new_credentials, remote_interactive, cached_interactive, cached_remote_interactive, cached_unlockseconds
thermalzone_temperatureglobala dimension per thermalzonecelsius
processes_cpu_utilizationglobala dimension per processpercentage
processes_handlesglobala dimension per processhandles
processes_io_bytesglobala dimension per processbytes/s
processes_io_operationsglobala dimension per processoperations/s
processes_page_faultsglobala dimension per processpgfaults/s
processes_page_file_bytesglobala dimension per processbytes
processes_pool_bytesglobala dimension per processbytes
processes_threadsglobala dimension per processthreads
service_stateservicerunning, stopped, start_pending, stop_pending, continue_pending, pause_pending, paused, unknownstate
service_statusserviceok, error, unknown, degraded, pred_fail, starting, stopping, service, stressed, nonrecover, no_contact, lost_commstatus
iis_website_trafficwebsitereceived, sentbytes/s
iis_website_requests_ratewebsiterequestsrequests/s
iis_website_active_connections_countwebsiteactiveconnections
iis_website_users_countwebsiteanonymous, non_anonymoususers
iis_website_connection_attempts_ratewebsiteconnectionattempts/s
iis_website_isapi_extension_requests_countwebsiteisapirequests
iis_website_isapi_extension_requests_ratewebsiteisapirequests/s
iis_website_ftp_file_transfer_ratewebsitereceived, sentfiles/s
iis_website_logon_attempts_ratewebsitelogonattempts/s
iis_website_errors_ratewebsitedocument_locked, document_not_founderrors/s
iis_website_uptimewebsitedocument_locked, document_not_foundseconds
mssql_instance_accessmethods_page_splitsmssql instancepagesplits/s
mssql_instance_cache_hit_ratiomssql instancehit_ratiopercentage
mssql_instance_bufman_checkpoint_pagesmssql instanceflushedpages/s
mssql_instance_bufman_page_life_expectancymssql instancelife_expectancyseconds
mssql_instance_bufman_iopsmssql instanceread, writteniops
mssql_instance_blocked_processesmssql instanceblockedprocesses
mssql_instance_user_connectionmssql instanceuserconnections
mssql_instance_locks_lock_waitmssql instancealloc_unit, application, database, extent, file, hobt, key, metadata, oib, object, page, rid, row_group, xactlocks/s
mssql_instance_memmgr_pending_memory_grantsmssql instancependingprocesses
mssql_instance_memmgr_server_memorymssql instancememorybytes
mssql_instance_sqlstats_auto_parameterization_attemptsmssql instancefailedattempts/s
mssql_instance_sqlstats_safe_auto_parameterization_attemptsmssql instancesafeattempts/s
mssql_instance_sqlstats_sql_compilationsmssql instancecompilationscompilations/s
mssql_instance_sqlstats_sql_recompilationsmssql instancerecompilesrecompiles/s
mssql_database_active_transactionsdatabaseactivetransactions
mssql_database_backup_restore_operationsdatabasebackupoperations/s
mssql_database_data_files_sizedatabasesizebytes
mssql_database_log_flusheddatabaseflushedbytes/s
mssql_database_log_flushesdatabaselogflushes/s
mssql_database_transactionsdatabasetransactionstransactions/s
mssql_instance_write_transactionsdatabasewritetransactions/s
ad_dra_replication_intersite_compressed_trafficglobalinbound, outboundbytes/s
ad_dra_replication_intrasite_compressed_trafficglobalinbound, outboundbytes/s
ad_dra_replication_sync_objects_remainingglobalinbound, outboundobjects
ad_dra_replication_objects_filteredglobalinbound, outboundobjects/s
ad_dra_replication_properties_updatedglobalinbound, outboundproperties/s
ad_dra_replication_properties_filteredglobalinbound, outboundproperties/s
ad_dra_replication_pending_syncsglobalpendingsyncs
ad_dra_replication_sync_requestsglobalrequestsrequests/s
ad_ds_threadsglobalin_usethreads
ad_ldap_last_bind_timegloballast_bindseconds
ad_bindsglobalbindsbinds/s
ad_ldap_searchesglobalsearchessearches/s
adcs_cert_template_requestscertificate templaterequestsrequests/s
adcs_cert_template_failed_requestscertificate templatefailedrequests/s
adcs_cert_template_issued_requestscertificate templateissuedrequests/s
adcs_cert_template_pending_requestscertificate templatependingrequests/s
adcs_cert_template_request_processing_timecertificate templateprocessing_timeseconds
adcs_cert_template_retrievalscertificate templateretrievalsretrievals/s
adcs_cert_template_retrieval_processing_timecertificate templateprocessing_timeseconds
adcs_cert_template_request_cryptographic_signing_timecertificate templatesinging_timeseconds
adcs_cert_template_request_policy_module_processingcertificate templateprocessing_timeseconds
adcs_cert_template_challenge_responsescertificate templatechallengeresponses/s
adcs_cert_template_challenge_response_processing_timecertificate templateprocessing_timeseconds
adcs_cert_template_signed_certificate_timestamp_listscertificate templateprocessedlists/s
adcs_cert_template_signed_certificate_timestamp_list_processing_timecertificate templateprocessing_timeseconds
adfs_ad_login_connection_failuresglobalconnectionfailures/s
adfs_certificate_authenticationsglobalauthenticationsauthentications/s
adfs_db_artifact_failuresglobalconnectionfailures/s
adfs_db_artifact_query_time_secondsglobalquery_timeseconds/s
adfs_db_config_failuresglobalconnectionfailures/s
adfs_db_config_query_time_secondsglobalquery_timeseconds/s
adfs_device_authenticationsglobalauthenticationsauthentications/s
adfs_external_authenticationsglobalsuccess, failureauthentications/s
adfs_federated_authenticationsglobalauthenticationsauthentications/s
adfs_federation_metadata_requestsglobalrequestsrequests/s
adfs_oauth_authorization_requestsglobalrequestsrequests/s
adfs_oauth_client_authenticationsglobalsuccess, failureauthentications/s
adfs_oauth_client_credentials_requestsglobalsuccess, failurerequests/s
adfs_oauth_client_privkey_jwt_authenticationsglobalsuccess, failureauthentications/s
adfs_oauth_client_secret_basic_authenticationsglobalsuccess, failureauthentications/s
adfs_oauth_client_secret_post_authenticationsglobalsuccess, failureauthentications/s
adfs_oauth_client_windows_authenticationsglobalsuccess, failureauthentications/s
adfs_oauth_logon_certificate_requestsglobalsuccess, failurerequests/s
adfs_oauth_password_grant_requestsglobalsuccess, failurerequests/s
adfs_oauth_token_requests_successglobalsuccessrequests/s
adfs_passive_requestsglobalpassiverequests/s
adfs_passport_authenticationsglobalpassportauthentications/s
adfs_password_change_requestsglobalsuccess, failurerequests/s
adfs_samlp_token_requests_successglobalsuccessrequests/s
adfs_sso_authenticationsglobalsuccess, failureauthentications/s
adfs_token_requestsglobalrequestsrequests/s
adfs_userpassword_authenticationsglobalsuccess, failureauthentications/s
adfs_windows_integrated_authenticationsglobalauthenticationsauthentications/s
adfs_wsfed_token_requests_successglobalsuccessrequests/s
adfs_wstrust_token_requests_successglobalsuccessrequests/s

Configuration

Edit the go.d/wmi.conf configuration file using edit-config from the Netdata config directory, which is typically at /etc/netdata.

cd /etc/netdata # Replace this path with your Netdata config directory
sudo ./edit-config go.d/wmi.conf

Needs only url to windows_exporter metrics endpoint. Here is an example for 2 instances:

jobs:
- name: win_server1
url: http://203.0.113.10:9182/metrics

- name: win_server2
url: http://203.0.113.11:9182/metrics

Hint: Use friendly server names for job names, as these will appear as "instances" in Netdata Cloud charts and on the right side menu of the agent UI charts.

For all available options please see module configuration file.

Troubleshooting

To troubleshoot issues with the wmi collector, run the go.d.plugin with the debug option enabled. The output should give you clues as to why the collector isn't working.

  • Navigate to the plugins.d directory, usually at /usr/libexec/netdata/plugins.d/. If that's not the case on your system, open netdata.conf and look for the plugins setting under [directories].

    cd /usr/libexec/netdata/plugins.d/
  • Switch to the netdata user.

    sudo -u netdata -s
  • Run the go.d.plugin to debug the collector:

    ./go.d.plugin -d -m wmi

Was this page helpful?

Contribute