我如何以编程方式确定IIS站点是否正在接收请求?

Dan*_*fer 6 c# iis wmi

标题基本概括了所有内容.一些警告是:

  • 我需要能够在C#中做到这一点
  • 它需要能够从远程服务器完成(即,在一台服务器上运行,在另一台服务器上检查IIS)
  • 需要接近实时(1秒内)
  • 可以使用WMI调用

我已经尝试过查看日志文件了,但事实证明它并不是非常接近实时.

谢谢!

编辑:我在评论汤姆的答案时说了这个,但这里更明显:

我能够使用此计数器查找更改:

var perf = new PerformanceCounter("ASP.NET Apps v2.0.50727", "Requests Total", "_LM_W3SVC_[IIS-Site-ID]_ROOT", "[Server-Name]");
Run Code Online (Sandbox Code Playgroud)

Tom*_*len 4

读取远程计算机上的 ASP.NET requests/sec 性能计数器怎么样?

System.Diagnostics.PerformanceCounter 类有一个采用计算机名称的构造函数。