Un exportador de Prometheus para máquinas de Windows.
| Nombre | Descripción | Habilitado por defecto |
|---|---|---|
| anuncio | Servicios de dominio de Active Directory | |
| ADCS | Servicios de certificado de Active Directory | |
| ADFS | Servicios de Federación de Active Directory | |
| cache | Métricas de caché | |
| UPC | Uso de la CPU | ✓ |
| cpu_info | Información de la CPU | |
| CS | Métricas "Sistema informático" (propiedades del sistema, NUM CPU/Memoria total) | |
| recipiente | Métricas de contenedores | |
| disco | Métricas de disco | |
| DFSR | Métricas DFSR | |
| DHCP | Servidor DHCP | |
| DNS | Servidor DNS | |
| intercambio | Intercambiar métricas | |
| filética | Métricas filéticas | |
| fsrmquota | Recopilador de cuotas de Microsoft File Server Resource Manager (FSRM) | |
| hipervible | Hosts Hyper-V | |
| iis | IIS Sitios y aplicaciones | |
| licencia | Estado de la licencia de Windows | |
| lógico_disk | Discos lógicos, E/S de disco | ✓ |
| inicio de sesión | Sesiones de inicio de sesión del usuario | |
| memoria | Métricas de uso de la memoria | ✓ |
| mscluster | MSCLUSTER METRICS | |
| MSMQ | Colas de MSMQ | |
| MSSQL | Métricas de objetos de rendimiento de SQL Server | |
| Netframework | Métricas de .net Framework | |
| neto | E/S de interfaz de red | ✓ |
| sistema operativo | Métricas del sistema operativo (memoria, procesos, usuarios) | ✓ |
| archivo de página | Métricas de archivo de página | |
| performance | Métricas de contador de rendimiento personalizado | |
| Físico_Disk | Métricas de disco físico | ✓ |
| impresora | Métricas de impresora | |
| proceso | Métricas por proceso | |
| Remote_fx | Métricas de Protocolo RemoteFX (RDP) | |
| Programado_Task | Tareas programadas métricas | |
| servicio | Métricas de estado de servicio | ✓ |
| SMB | Servidor SMB | |
| smbclient | Cliente SMB | |
| smtp | Servidor IIS SMTP | |
| sistema | Llamadas del sistema | ✓ |
| TCP | Conexiones TCP | |
| Terminal_services | Servicios Terminal (RDS) | |
| archivo de texto | Lea las métricas de Prometheus de un archivo de texto | |
| termalzona | Información térmica | |
| tiempo | Servicio de tiempo de Windows | |
| UDP | Conexiones UDP | |
| actualizar | Servicio de actualización de Windows | |
| VMware | Contadores de rendimiento instalados por el agente invitado de VMware |
Consulte la documentación vinculada en cada recopilador para obtener más información sobre métricas informadas, configuraciones de configuración y ejemplos de uso.
windows_exporter expondrá todas las métricas de coleccionistas habilitados de forma predeterminada. Esta es la forma recomendada de recolectar métricas para evitar errores al comparar métricas de diferentes familias.
Para un uso avanzado, el windows_exporter se puede pasar una lista opcional de coleccionistas para filtrar métricas. El parámetro collect[] se puede usar varias veces. En la configuración de Prometheus, puede usar esta sintaxis bajo la configuración de raspado.
params:
collect[]:
- foo
- bar
Esto puede ser útil para que los servidores Prometheus diferentes recopilen métricas específicas de los nodos.
Windows_Exporter acepta banderas para configurar ciertos comportamientos. Los que configuran el comportamiento global del exportador se enumeran a continuación, mientras que los específicos de los recaudadores se documentan en la documentación del colector respectivo anterior.
| Bandera | Descripción | Valor predeterminado |
|---|---|---|
--web.listen-address | Host: puerto para exportador. | :9182 |
--telemetry.path | Ruta de URL para la superficie de las métricas recolectadas. | /metrics |
--telemetry.max-requests | Número máximo de solicitudes concurrentes. 0 para deshabilitar. | 5 |
--collectors.enabled | Lista de coleccionistas separados por comas para usar. Use [defaults] como marcador de posición que se expande que contenga todos los coleccionistas habilitados de forma predeterminada ". | [defaults] |
--collectors.print | Si es cierto, imprima coleccionistas disponibles y salga. | |
--scrape.timeout-margin | Segundos para restar del tiempo de espera permitido por el cliente. Sintonice para permitir cargas superiores o altas. | 0.5 |
--web.config.file | Una configuración web para configurar TLS y Auth | Ninguno |
--config.file | Uso de un archivo de configuración desde ruta o URL | Ninguno |
--config.file.insecure-skip-verify | Omita TLS al cargar el archivo de configuración desde la URL | FALSO |
--log.file | Archivo de salida de los mensajes de registro. Uno de [StDout, Stderr, EventLog, <ruta a la registro del archivo>] Nota: El instalador MSI agregará un argumento predeterminado a la configuración del servicio instalado esto en EventLog | stderr |
El último lanzamiento se puede descargar desde la página de lanzamientos.
Cada versión proporciona un instalador .msi. El instalador configurará el Windows_Exporter como un servicio de Windows, así como creará una excepción en el firewall de Windows.
Si el instalador se ejecuta sin parámetros, el exportador se ejecutará con la configuración predeterminada para coleccionistas, puertos, etc. habilitados, etc.
El instalador proporciona un archivo de configuración para personalizar el exportador.
El archivo de configuración
--config.file .Los siguientes parámetros están disponibles:
| Nombre | Descripción |
|---|---|
ENABLED_COLLECTORS | Como la bandera --collectors.enabled . |
CONFIG_FILE | Use el indicador --config.file para especificar un archivo de configuración. Si está vacío, no se establecerá ningún archivo de configuración. El valor especial config.yaml establece la ruta a config.yaml en install dir |
LISTEN_ADDR | La dirección IP para vincular. El valor predeterminado es una cadena vacía. (cualquier dirección local) |
LISTEN_PORT | El puerto para vincular. El valor predeterminado es 9182 . |
METRICS_PATH | El camino al que servir a las métricas. Predeterminado a /metrics |
TEXTFILE_DIRS | Use el indicador --collector.textfile.directories para especificar uno o más directorios, separados por comas, donde el coleccionista debe leer archivos de texto que contienen métricas |
REMOTE_ADDR | Permite configurar direcciones IP remotas separadas por coma para la excepción de firewall de Windows (Permitir la lista). El valor predeterminado es una cadena vacía (cualquier dirección remota). |
EXTRA_FLAGS | Permite pasar banderas de CLI completas. El valor predeterminado es una cadena vacía. Para --collectors.enabled y --config.file , use las propiedades especializadas ENABLED_COLLECTORS y CONFIG_FILE |
ADDLOCAL | Habilita características dentro del instalador Windows_Exporter. Valores compatibles: FirewallException |
REMOVE | Desactiva las características dentro del instalador Windows_Exporter. Valores compatibles: FirewallException |
Los parámetros se envían al instalador a través de msiexec . En PowerShell, el --% debe aprobarse antes de definir las propiedades.
Ejemplo de invocaciones:
msiexec / i < path - to - msi - file > --% ENABLED_COLLECTORS=os,iis LISTEN_PORT=5000Ejemplo de coleccionista de servicios con una consulta personalizada.
msiexec / i < path - to - msi - file > --% ENABLED_COLLECTORS=os,service EXTRA_FLAGS="--collectors.exchange.enabled=""ADAccessProcesses"""Defina un archivo de configuración.
msiexec / i < path - to - msi - file > --% CONFIG_FILE="D:config.yaml"En algunas versiones anteriores de Windows, es posible que deba rodear los valores de los parámetros con cotizaciones dobles para obtener el análisis del comando de instalación correctamente:
msiexec / i C:UsersAdministratorDownloadswindows_exporter.msi --% ENABLED_COLLECTORS="ad,iis,logon,memory,process,tcp,textfile,thermalzone" TEXTFILE_DIRS="C:custom_metrics"Para instalar el exportador con la creación de una excepción de firewall, use el siguiente comando:
msiexec / i < path - to - msi - file > --% ADDLOCAL=FirewallException Las versiones de PowerShell 7.3 y arriba requieren que PSNATIVECMANDARGUMENTing se establezca en Legacy cuando se usa --% EXTRA_FLAGS :
$PSNativeCommandArgumentPassing = ' Legacy '
msiexec / i < path - to - msi - file > ENABLED_COLLECTORS = os , service --% EXTRA_FLAGS="--collectors.exchange.enabled=""ADAccessProcesses""" Windows_Exporter se puede ejecutar como un contenedor Docker. La imagen de Docker está disponible en
docker.io/prometheuscommunity/windows-exporterghcr.io/prometheus-community/windows-exporter La imagen de Docker está etiquetada con la versión del exportador. La latest etiqueta también está disponible y señala el último lanzamiento.
Además, un hostprocess de sabor con -hostprocess como sufijo se basa en https://github.com/microsoft/windows-hindot-process-containers-base-image que está diseñado para ejecutar como un contenedor de proceso host de Windows. El tamaño de esas imágenes es más pequeño que el predeterminado.
Vea los pasos detallados para instalar en Windows Kubernetes aquí.
windows_exporter admite las versiones de Windows Server 2016 y posterior, y el escritorio Windows versión 10 y 11 (21h2 o posterior).
Windows Server 2012 y 2012R2 son compatibles con solo un mejor esfuerzo, pero no se garantiza que funcione.
go get -u github.com/prometheus/promu
go get -u github.com/prometheus-community/windows_exporter
cd $env:GOPATH/src/github.com/prometheus-community/windows_exporter
promu build -v
.windows_exporter.exe
Las métricas Prometheus se expusirán en Localhost: 9182
Windows_Exporter proporciona los siguientes puntos finales HTTP:
/metrics : expone métricas en el formato de texto Prometheus./health : Devuelve 200 OK cuando el exportador se está ejecutando./debug/pprof/ : Expone los puntos finales PPROF. Solo se establece si --debug.enabled . .windows_exporter.exe --collectors.enabled "service" --collector.service.include="windows_exporter"
.windows_exporter.exe --collectors.enabled "process" --collector.process.include="firefox.+"
Cuando hay múltiples procesos con el mismo nombre, WMI representa aquellos después de la primera instancia como process-name#index . Entonces, para conseguirlos todos, en lugar de solo el primero, la expresión regular debe usar .+ . Consulte el proceso para obtener más información.
--collectors.enabled . Usando [defaults] con --collectors.enabled .
.windows_exporter.exe --collectors.enabled "[defaults],process,container"
Esto permite el proceso adicional y los coleccionistas de contenedores además de los valores predeterminados.
Los archivos de configuración YAML se pueden especificar con el indicador --config.file . Eg .windows_exporter.exe --config.file=config.yml . Si está utilizando la ruta absoluta, asegúrese de citar la ruta, por ejemplo .windows_exporter.exe --config.file="C:Program Fileswindows_exporterconfig.yml"
También es posible cargar la configuración de una URL. Eg .windows_exporter.exe --config.file="https://example.com/config.yml"
Si necesita omitir la verificación TLS, puede usar el indicador --config.file.insecure-skip-verify . Eg .windows_exporter.exe --config.file="https://example.com/config.yml" --config.file.insecure-skip-verify
collectors :
enabled : cpu,net,service
collector :
service :
include : windows_exporter
log :
level : warnSe puede encontrar un archivo de configuración de ejemplo aquí.
Los valores del archivo de configuración se pueden mezclar con los indicadores CLI. P.EJ
.windows_exporter.exe --collectors.enabled=cpu,logon
log :
level : debugLas banderas de CLI disfrutan de una prioridad más alta sobre los valores especificados en el archivo de configuración.
Bajo MIT