mirror of
https://github.com/prometheus-community/windows_exporter.git
synced 2026-10-19 19:19:04 +02:00
Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com> Signed-off-by: Jan-Otto Kröpke <mail@jkroepke.de>
1.2 KiB
1.2 KiB
process collector
IIS application pool names (--collector.process.iis) come from two sources.
- Primary: the
-ap "<pool>"argument of eachw3wpcommand line, read withNtQueryInformationProcess(ProcessCommandLineInformation). It needs onlyPROCESS_QUERY_LIMITED_INFORMATIONand Windows 8.1 or Server 2012 R2. - Fallback:
WorkerProcessinroot\WebAdministration, used only when it answered duringBuildand a command line can't be read or has no-ap. It needs the optional IIS Management Scripts and Tools feature (Web-Scripting-Tools), and asks WAS through RSCA on every query. splitCommandLinefollowsCommandLineToArgvW.FuzzSplitCommandLinecompares it withwindows.DecomposeCommandLine; run it after parser changes withgo test -run '^$' -fuzz FuzzSplitCommandLine ./internal/collector/process/.- Without IIS,
TestCollectorWorkerProcessCommandLinestarts a suspended copy of the test binary namedw3wp.exeto check the published label. The IIS tests compare against WMI when available and against theIIS APPPOOL\<pool>process owner. - Don't create or change IIS application pools on a development machine to test edge cases; use suspended processes with crafted command lines.