You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过Windows exporter采集的IIS metrics能否查询各IIS应用池内存占用?

问题解答

指标判断

你测试的两个指标不符合需求:

  • windows_iis_worker_file_cache_memory_bytes:是IIS工作进程当前用于文件缓存的内存量
  • windows_iis_worker_file_cache_max_memory_bytes:是IIS工作进程允许用于文件缓存的最大内存阈值

二者仅统计IIS缓存模块的局部内存占用,不代表整个IIS应用池的总内存消耗。

实现方案

无需开发自定义exporter,使用windows_exporter自带的process采集器即可实现需求:
每个运行中的IIS应用池对应一个独立的w3wp.exe系统进程,进程的command_line标签自带应用池名称参数,可直接通过进程内存指标查询对应数据。

前提条件

windows_exporter启动时已启用process采集器,可在启动参数的--collectors.enabled配置项中添加process开启。

查询语句

  1. 基础查询:直接获取所有运行中IIS应用池的物理内存占用(工作集)
windows_process_working_set_bytes{process_name="w3wp.exe"}

返回结果的command_line标签中包含-ap "应用池名称"格式的参数,可直接对应到具体应用池。

  1. 优化查询:新增独立的app_pool标签展示应用池名称,方便筛选聚合
label_replace(windows_process_working_set_bytes{process_name="w3wp.exe"}, "app_pool", "$1", "command_line", ".*-ap\x20\"([^\"]+)\".*")

你可以直接通过app_pool标签筛选指定应用池,或者按机器、应用池维度做聚合统计。

内容的提问来源于stack exchange,提问作者Steven

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 04:57:03