gpt4 book ai didi

c# - 如何使用 C# 从 IIS 获取当前的 Worker Request 列表?

转载 作者:行者123 更新时间:2023-11-30 13:55:57 24 4
gpt4 key购买 nike

我正在为 RESTful Web 服务状态页面编写代码。我想知道是否有办法将 IIS 的当前请求获取到 C# 中。

我正在使用 IIS 7.0,我想要的信息在

IIS > Worker procecces > ASP.NET v4.0 > Requests

enter image description here

最佳答案

您可以使用 GetRequests WorkerProcess 的方法类型。此类型位于 Microsoft.Web.Administration可以使用此安装的组件 unofficial nuget package或者通过添加对此 dll 的引用 %WinDir%\System32\InetSrv\Microsoft.Web.Administration.dll

例子:

using (ServerManager manager = new ServerManager())
{
while (true)
{
var requests = manager.ApplicationPools
.Where(pool => pool.Name == "FooPool")
.SelectMany(pool => pool.WorkerProcesses)
.SelectMany(wp => wp.GetRequests(10));

Console.WriteLine(requests.Count());
Thread.Sleep(100);
}
}

注意:您需要启用 IIS 请求管理器功能,并使用具有足够权限的用户运行。参见 How do I see currently executing web request on IIS 8

关于c# - 如何使用 C# 从 IIS 获取当前的 Worker Request 列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30868022/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com