如何疑難排解監視,以及在.NET Framework 2.0 的效能計數器的記錄問題

文章翻譯 文章翻譯
文章編號: 922775 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

結論

這篇文章說明如何使用通用語言執行階段 (CLR) 效能計數器以及如何解決當您使用 Microsoft.NET Framework 2.0 中的效能計數器時,會發生的已知的問題。若要監視遠端電腦上的效能計數器,您必須是遠端電腦上的系統管理員。如果遠端電腦正在執行 Microsoft Windows Server 2003,您必須在 [效能記錄使用者 (PLU) 群組] 或 [效能監視器使用者 (PMU) 群組中。若要記錄 CLR 效能計數器,設定使用者執行以具有系統管理權限的使用者。本文將告訴您與監視或登入 CLR 效能計數器在相關的問題 遠端電腦。

簡介

CLR 提供搭配的服務,例如下列的 Managed 程式碼:
  • 跨語言整合
  • 程式碼存取安全性
  • 物件存留期管理
  • 資源管理
  • 型別安全
  • pre-emptive 執行緒處理
  • 中繼資料服務 (型別反映)
  • 偵錯和分析的支援
CLR 具有您可以使用追蹤功能的應用程式的效能計數器。您可以使用效能監視器 (效能監視器) 來建立自訂效能計數器。您可以藉由檢視效能計數器傳回的值來監視系統效能。

其他相關資訊

當您在.NET Framework 2.0 中使用 CLR 效能計數器時,可能會發生下列的已知的問題。

您無法從遠端監視 CLR 效能計數器

當想監視效能監視器中的遠端電腦上的 [CLR] 效能計數器會收到類似下列的錯誤訊息:
無法連接到電腦
如果要解決這個問題,使用下列方法之一。

方法 1: 檢查遠端登錄服務遠端電腦上執行

發生這個問題,請確認已在遠端電腦上執行遠端登錄服務。要這麼做,請您執行下列步驟:
  1. 按一下 [開始],再按一下 [執行]、 輸入 cmd,] 然後再按一下 [確定]
  2. 在命令提示字元下鍵入 tasklist-svc,然後按 ENTER 鍵。

    請確認 Svchost.exe 主機處理序正在執行,在 [服務] 欄中有 RemoteRegistry。如果不執行該服務前往步驟 3。
  3. 在命令提示字元下鍵入 net 啟動 RemoteRegistry,並按下 ENTER。

方法 2: 確認您具有必要的權限

若要監視遠端電腦上的 CLR 效能計數器,下列條件必須成立:
  • 您必須是遠端電腦上系統管理員群組的成員。
  • 如果遠端電腦執行 Windows Server 2003,您必須是以監視效能計數器的效能監視器使用者群組的成員。
  • 如果遠端電腦執行 Windows Server 2003,您必須是效能記錄使用者群組的成員來記錄效能計數器。此外,您必須使用 執行身分 」 命令來設定記錄處理序來執行在 [系統管理員群組] 或 [效能記錄使用者群組下面。

雖然您可以連線到遠端電腦,不能檢視 CLR 效能計數器

如果 Windows Server 2003 為基礎的遠端電腦正在執行 Microsoft.NET Framework 1.1 Service Pack 1 (SP1),套用下列 「 Microsoft 知識庫 」 文件中所述的 Hotfix:
924421FIX: 應用程式效能 deteriorates] 或 [電腦停止回應當您在 Windows 2003 電腦上執行.NET Framework 1.1 Service Pack 1 為基礎的應用程式

當您嘗試啟動記錄 CLR 效能計數器時,收到 ACCESS_DENIED 」 錯誤訊息

當想開始記錄 CLR 效能計數器可能會收到類似下列的錯誤訊息:
錯誤碼 5 (ACCESS_DENIED)
無法開啟填隙資料庫版本的登錄機碼-v2.0.50727.00000。 為服務 」.NET Framework"DLL D:\WINNT\system32\mscoree.dll 」 中開啟的程序失敗。這項服務的效能資料將無法使用。傳回狀態碼是貼附的資料中在第一個 DWORD。狀態碼為 5 (ACCESS_DENIED)
載入 CLR 效能計數器 DLL (Corperfmonext.dll),第一個處理程序會建立具名的事件 Inter-Process 通訊 (IPC) 的通訊,就會發生這個問題。建立具名的事件程序的使用者識別碼使用權限。

比方說使用者擁有系統管理權限啟動效能監視器。然後,使用者開始監視 CLR 效能計數器。藉由授與系統管理員群組的權限,就會建立具名的事件。在這種情況下,使用者會收到錯誤訊息,如果使用者嘗試啟動記錄 CLR 效能計數器。"效能記錄及警示 」 服務無法存取具名的事件,就會發生這個問題。

如果要解決這個問題,請先載入 Corperfmonext.dll 檔案"效能記錄及警示 」 服務中。要這麼做,請您執行下列步驟:
  1. 按一下 [開始],再按一下 [執行]、 輸入 cmd,] 然後再按一下 [確定]
  2. 在命令提示字元下鍵入 tasklist-m corperfmonext.dll,並按下 ENTER。請注意列出的每個處理程序。
  3. 在命令提示字元下鍵入 taskmgr,並按下 ENTER。
  4. 在 [處理程序] 索引標籤上按一下您在步驟 2 中, 記下每個處理程序,然後按一下 [結束處理程序
  5. 按一下 [開始]、 按一下 [執行]、 輸入 效能監視器,然後按一下 [確定]]。
  6. 展開 [效能記錄及警示],然後按一下 [計數器記錄檔
  7. 您想要使用的服務上按一下滑鼠右鍵,然後按一下 [開始]
附註這個問題被排定在未來的.NET Framework 版本中修正。

您不能監視 32 位元的 Managed 的程式在 64 位元版本的效能監視器

64 位元版本的 Corperfmonext.dll 檔案只會列舉 64 位元處理程序,就會發生這個問題。此外,Corperfmonext.dll 檔案的 32 位元版本只會列舉 32 位元處理程序。若要欲 32 位元的 Managed 的程式在 64 位元電腦上,按一下 [開始]、 按一下 [執行]、 鍵入 SystemRoot%\SysWOW64\perfmon.exe,並再按一下 [確定]

附註這個問題被排定在未來的.NET Framework 版本中修正。

Managed 的程式重新啟動遠端電腦上時將不會偵測效能監視器

「 遠端登錄 」 服務會在本機服務帳戶下執行,就會發生這個問題。本機服務帳戶不是 「 效能監視器使用者 」 群組或 效能記錄使用者 群組的成員。因此,本機服務帳戶沒有存取 CLR 效能計數器 IPC 區塊。 不過,您可以在遠端登錄服務會模擬使用者啟始監控,因為監視 CLR 效能計數器。

不過,如果重新啟動受監視的處理程序,新的 IPC 區塊被開啟遠端登錄服務中的輔助執行緒。此輔助執行緒沒有模擬使用者在用戶端上。因此,執行緒無法存取 CLR 效能計數器 IPC 區塊。若要解決這個問題,重新啟動效能計數器監視從用戶端。

多個 CLR 效能計數器會顯示具有類似的名稱"W3wp # 1"

當多個 ASP.NET 工作者處理序正在執行,有類似的名稱的 CLR 效能計數器 」 W3wp # 1 」 或 「 W3sp # 2"可能會出現。在.NET Framework 2.0 計數器,名為 處理序識別碼 已加入.NET CLR 記憶體效能物件。這個計數器會顯示執行個體相關處理序 ID。這個計數器可用來判斷處理序相關聯的 [CLR 效能計數器。

如果看不到名為 .NET CLR 記憶體] 下的 處理序識別碼 計數器,效能計數器符號可能無法正確地安裝。如果要解決這個問題,請依照下列步驟執行:
  1. 按一下 [開始],再按一下 [執行]、 輸入 cmd,] 然後再按一下 [確定]
  2. 在命令提示字元下鍵入 unlodctr.NetFramework,並按下 ENTER。
  3. 若要變更為 \Microsoft.Net\Framework\v2.0.50727 資料夾使用 cd 命令。
  4. 在命令提示字元下鍵入 lodctr corperfmonsymbols.ini,並按下 ENTER。

屬性

文章編號: 922775 - 上次校閱: 2007年8月14日 - 版次: 1.2
這篇文章中的資訊適用於:
  • Microsoft .NET Framework 2.0
關鍵字:?
kbmt kbregistry kbperformancetool kbperfmon kbmsg kbinput kbfaq kbtshoot kbprb KB922775 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:922775
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com