Iis-6
如何將“w3wp”程序名稱轉換為 PID 或使用者名?(即-“w3wp#29)
我在Windows Server 2003 IIS6 Web 伺服器上執行一些性能計數器/報告,每個網站都在其自己的應用程序池/工作程序使用者下執行。
該報告提供了站點的名稱,例如:
w3wp#29 w3wp#30 w3wp#31 w3wp#32
我需要工作程序名稱(或 PID),以便確定每個站點與哪個網站相關。
#29、#30、#31 等數字不是 PID,因為當我在任務管理器中啟用 PID 視圖時,或者如果我在 Sysinternals 程序管理器中啟用“命令行”列,或者使用 iisapp.vbs 腳本 - PID 的是更長的數字。
我無法找到將上述程序轉換為應用程序池使用者名或至少是 PID 的任何內容,因此我可以使用 iisapp.vbs 腳本將其交叉引用到站點。
我對此進行了研究,並確實遇到了一個系統資料庫設置,它可能會做我正在尋找的事情,但除非沒有其他方法我不想進行系統資料庫更改:
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PerfProc\Performance] "ProcessNameFormat"=dword:00000002
關於如何查找或將 w3wp#XX 程序轉換為應用程序池使用者名或 PID 的任何想法?
謝謝
要交叉引用,您可以使用程序計數器“ID Process”。將其包含在性能數據中,它將顯示程序的 PID。這對於一次性交叉引用來說很好,但它有點痛苦。
如果可以的話,我仍然建議更改系統資料庫。在我看來,系統資料庫更改應該是任何基礎建構的一部分。
這是一篇涵蓋相同內容並確認系統資料庫更改的部落格文章:http ://weblogs.asp.net/owscott/archive/2007/03/19/registry-change-for-perfmon-and-pid-data.aspx
老凹凸,但您可以使用 sysinternals 實用程序 PROCEXP 並添加“命令行”列以查看哪個池在哪個 w3wp 程序中執行。