.NET Framework 2. 0'CLR performans sayaçları'nı kullandığınızda, aşağıdaki bilinen sorunlar oluşabilir.
CLR performans sayaçlarını uzaktan izlenemiyor
CLR Perfmon uzak bir bilgisayardaki performans sayaçlarını izlemek çalıştığınızda, aşağıdakine benzer bir hata iletisi alırsınız:
Makineye bağlanılamıyor.
Bu sorunu gidermek için aşağıdaki yöntemlerden birini kullanın.
Yöntem 1: uzak bilgisayarda Remote Registry hizmetinin çalıştığından emin olun.
Bu sorun oluştuğunda, uzak bilgisayarda Remote Registry hizmetinin çalıştığından emin olun. Bunu yapmak için şu adımları izleyin:
- Başlat ' ı tıklatın, Çalıştır ' ı tıklatın, cmd yazın ve Tamam ' ı tıklatın.
- Komut isteminde tasklist - svc, ve sonra ENTER tuşuna basın.
Doğrulama, bir Svchost.exe ana bilgisayar işleminin çalıştığından RemoteRegistryHizmetleri sütunu vardır. Hizmet çalışıyorsa, adım 3'e gidin.
- Komut satırında net start RemoteRegistry yazın ve ENTER tuşuna basın.
Yöntem 2: gerekli izinlere sahip olduğunu doğrulayın.
Uzak bilgisayardaki CLR performans sayaçlarını izlemek için aşağıdaki koşulların doğru olması gerekir:
- Uzak bilgisayardaki <a1>Administrators</a1> grubunun üyesi olmanız gerekir.
- Uzak bilgisayar Windows Server 2003 çalıştırıyorsa, performans sayaçlarını izlemek için Performans Monitor Users grubunun üyesi olmanız gerekir.
- Uzak bilgisayar Windows Server 2003 çalıştırıyorsa, performans sayaçlarını günlüğe kaydetmek için <a0>Performance Log Users</a0> grubunun üyesi olmanız gerekir. Ayrıca, günlüğe kaydetme işlemi, altında Administrators grubunun veya Performance Log Users grubunun altında çalışacak şekilde yapılandırmak için Farklı Çalıştır komutunu kullanmanız gerekir.
Uzak bilgisayara bağlanabilirler olsa CLR performans sayaçlarını görüntüleyemezsiniz.
Windows Server 2003 tabanlı uzak bilgisayarda Microsoft .NET Framework 1.1 Service Pack 1 (SP1) çalıştırıyorsanız, aşağıdaki Microsoft Knowledge Base makalesinde anlatılan düzeltmeyi uygulayın:
924421
Düzeltme: Uygulama performansı deteriorates veya bilgisayar, Windows 2003 tabanlı bir bilgisayarda .NET Framework 1.1 Service Pack 1 tabanlı bir uygulama çalıştırdığınızda yanıt vermiyor
CLR performans sayaçlarını günlüğe başlatmaya çalıştığınızda bir "Access_denıed" hata iletisi alıyorsunuz
CLR performans sayaçlarını günlüğe başlatmaya çalıştığınızda, aşağıdakine benzer bir hata iletisi alabilirsiniz:
<a1>5</a1> (ACCESS_DENIED) hata kodu
Veritabanı sürüm kayıt defteri anahtarının dolgu - açılamıyor v2.0.50727.00000. Hizmetin ".NETFramework" "D:\WINNT\system32\mscoree.dll" DLL içinde Aç yordamı başarısız oldu. Bu hizmet için performans verileri kullanılamayacak. Döndürülen durum kodu, ekli veriler ilk DWORD ' dir. <a1>5</a1> (ACCESS_DENIED) durum kodudur
Bu sorun, ilk işlem CLR performans sayacı DLL (Corperfmonext.dll) yüklemek için bir adlandırılmış olay Inter-Process iletişim (IPC) iletişimi için oluşturduğundan oluşur. Işlemin kullanıcı KIMLIĞI izinleri kullanan BIR adlandırılmış olay oluşturulur.
Örneğin, yönetici izinlerine sahip bir kullanıcı, Perfmon başlatır. CLR performans sayaçlarını izlemek, daha sonra kullanıcı başlar. Adlandırılmış olay, yönetici grubuna verilen izinler kullanılarak oluşturulur. Kullanıcı, CLR performans sayaçlarını günlüğe başlatmaya çalışırsa, bu senaryoda, kullanıcı hata iletisi alır. "Performans Günlükleri ve Uyarıları" hizmeti bir adlandırılmış olay erişemediği için bu sorun oluşur.
Bu soruna geçici bir çözüm bulmak için <a0></a0>, "Performans Günlükleri ve Uyarıları" hizmeti Corperfmonext.dll dosyasında yüklenemedi. Bunu yapmak için şu adımları izleyin:
Not
- Başlat ' ı tıklatın, Çalıştır ' ı tıklatın, cmd yazın ve Tamam ' ı tıklatın.
- Komut satırında tasklist -m corperfmonext.dll yazın ve ENTER tuşuna basın. Listelenen her işlem için dikkat edin.
- Komut isteminde, Denetim yazın ve ENTER tuşuna basın.
- Işlemler sekmesinde, 2. adımda not ettiğiniz her işlemi'ni tıklatın ve İşlemi Sonlandır</a1>'ı tıklatın.
- Başlat ' ı tıklatın, Çalıştır ' ı tıklatın, Perfmon yazın ve Tamam ' ı tıklatın.
- Performans Günlükleri ve Uyarıları'nı genişletin ve sonra Sayaç günlükleri ' ni tıklatın.
- Kullanmak istediğiniz hizmeti sağ tıklatın ve sonra da <a2>Başlat</a2>'ı tıklatın.
Bu sorun, .NET Framework'un gelecekteki bir sürümüne giderilmesi planlanmıştır.
Yönetilen 32-bit programların 64 bit sürümünde Perfmon izlenemiyor
Bu sorun, Corperfmonext.dll dosyasının 64-bit sürümü yalnızca 64 bitlik işlemler için sıralar nedeniyle oluşur. Ayrıca, 32-bit sürümünü Corperfmonext.dll dosyasının yalnızca 32 bitlik işlemler numaralandırır. Yönetilen programlar 32 bit, 64-bit bir bilgisayarda görüntülemek için <a0></a0>, Başlat
' ı tıklatın, Çalıştır
' ı tıklatın, SystemRoot%\SysWOW64\perfmon.exe
yazın ve Tamam
' ı tıklatın.Not
Bu sorun, .NET Framework'un gelecekteki bir sürümüne giderilmesi planlanmıştır.
Yönetilen bir programı uzak bilgisayarda yeniden başlatıldığında, Perfmon algılamıyor
Uzak Kayıt Defteri hizmetini Local Service hesabı altında çalıştığından, bu sorun oluşur. Yerel hizmet hesabı <a0>Performance Monitor Users
</a0> grubunun veya Performance Log Users
grubunun bir üyesi değil. Bu nedenle, yerel hizmet hesabı için CLR performans sayacı IPC bloğu erişimi yok. Yine de, Uzak Kayıt Defteri hizmetini izleme başlatan kullanıcının kimliğine bürünür nedeniyle CLR performans sayaçlarını izleyebilirsiniz.
Izlenen işlem yeniden başlatılırsa, ancak yeni bir IPC bloğu Uzak Kayıt Defteri hizmetini ikincil bir iş parçacığı tarafından açılır. Bu yardımcı iş parçacığı istemci üzerindeki kullanıcı özelliklerini. Bu nedenle, iş parçacığının CLR performans sayacı IPC engelle erişemiyor. Bu soruna geçici bir çözüm bulmak için <a0></a0>, performans sayacı izleme istemciden yeniden başlatın.
Birden çok CLR performans sayaçlarını benzer adlara sahip görünür "W3wp # 1"
Ne zaman birden çok ASP.NET çalışanları işlem, benzer adlara sahip CLR performans sayaçlarını çalıştıran "W3wp # 1"veya"W3sp # 2" görünebilir. .NET Framework 2.0, İşlem KIMLIĞI
adlı bir sayacı .NET CLR belleği performans nesnesi için eklenmiştir. Bu sayaç, örnek işlem KIMLIĞI görüntüler. Bu sayaç, bir işlemle ilişkili bir CLR performans sayacı belirlemek için kullanabilirsiniz..NET CLR belleği
altında İşlem KIMLIĞI
adlı bir sayacı göremiyorsanız, performans sayacı simgeler düzgün yüklenmemiş olabilir. Bu sorunu gidermek için aşağıdaki adımları izleyin:
- Başlat ' ı tıklatın, Çalıştır ' ı tıklatın, cmd yazın ve Tamam ' ı tıklatın.
- Komut satırında unlodctr .NetFramework yazın ve ENTER tuşuna basın.
- Cd komutu \Microsoft.Net\Framework\v2.0.50727 klasörü değiştirmek için kullanın.
- Komut satırında lodctr corperfmonsymbols.ini yazın ve ENTER tuşuna basın.