Risoluzione dei problemi di monitoraggio e registrazione dei problemi per i contatori delle prestazioni in .NET Framework 2.0

Traduzione articoli Traduzione articoli
Identificativo articolo: 922775 - Visualizza i prodotti a cui si riferisce l?articolo.
Espandi tutto | Chiudi tutto

In questa pagina

Sommario

in questo articolo viene descritto come utilizzare i contatori delle prestazioni runtime (CLR) di linguaggio comuni e come risolvere problemi noti che verificarsi quando si utilizzano i contatori delle prestazioni in Microsoft .NET Framework 2.0. Per monitorare contatori delle prestazioni su un computer remoto, Ŕ necessario essere un amministratore del computer remoto. Se il computer remoto Ŕ in esecuzione Microsoft Windows Server 2003, Ŕ necessario nel gruppo Performance Log Users (PLU) o del gruppo Performance Monitor Users (PMU). Per registrare i contatori delle prestazioni di CLR, Ŕ possibile configurare all'utente di eseguire come utente che dispone di autorizzazioni amministrative. In questo articolo viene descritto i problemi relativi a monitoraggio o di accesso CLR contatori sul computer remoto.

INTRODUZIONE

CLR fornisce codice gestito con servizi, ad esempio:
  • Integrazione di pi¨ linguaggi
  • Protezione dall'accesso di codice
  • Gestione del ciclo di vita oggetto
  • Gestione delle risorse
  • Indipendenza dai tipi
  • Threading pre-emptive
  • Servizi metadati (tipo reflection)
  • Debug e profiling supporto
Il CLR dispone i contatori di prestazioni che Ŕ possibile utilizzare per tenere traccia le funzionalitÓ di un'applicazione. ╚ possibile utilizzare Performance Monitor (PerfMon) per creare contatori delle prestazioni personalizzati. ╚ possibile monitorare le prestazioni del sistema controllando i valori che restituiscono i contatori delle prestazioni.

Informazioni

Problemi noti seguenti possono verificarsi quando si utilizzano contatori delle prestazioni di CLR di .NET Framework 2.0.

╚ Impossibile monitorare in remoto i contatori di prestazioni di CLR

Quando si tenta di monitorare i contatori delle prestazioni di CLR in un computer remoto in PerfMon, viene visualizzato un messaggio di errore analogo al seguente:
Impossibile connettersi al computer
Per risolvere il problema, utilizzare uno dei seguenti metodi.

Metodo 1: Verificare che il servizio di registro di sistema remoto Ŕ in esecuzione sul computer remoto

Quando si verifica questo problema, Ŕ necessario verificare che il servizio Registro di sistema remoto sia in esecuzione sul computer remoto. Per effettuare questa operazione, attenersi alla seguente procedura:
  1. Fare clic su Start , scegliere Esegui , digitare cmd e quindi fare clic su OK .
  2. Al prompt di comando, digitare tasklist - svc , quindi premere INVIO.

    Verificare che un processo host di Svchost.exe Ŕ in esecuzione che presenta il RemoteRegistry nella colonna delle servizi . Se il servizio non Ŕ in esecuzione, andare al passaggio 3.
  3. Al prompt dei comandi, digitare net start RemoteRegistry e quindi premere INVIO.

Metodo 2: Assicurarsi di disporre di autorizzazioni richiesti

Per monitorare contatori delle prestazioni di CLR in un computer remoto, devono essere soddisfatte le seguenti condizioni:
  • ╚ necessario essere un membro del gruppo Administrators sul computer remoto.
  • Se il computer remoto Ŕ in esecuzione Windows Server 2003, Ŕ necessario essere un membro del gruppo Performance Monitor Users per monitorare i contatori di prestazioni.
  • Se il computer remoto Ŕ in esecuzione Windows Server 2003, Ŕ necessario essere un membro del gruppo Performance Log Users per registrare i contatori delle prestazioni. Inoltre, Ŕ necessario utilizzare il comando Esegui come per configurare il processo di registrazione per eseguito con il gruppo Administrators o del gruppo Performance Log Users.

Non Ŕ possibile visualizzare contatori delle prestazioni di CLR anche se Ŕ possibile connettersi a computer remoto

Se il computer remoto basato su Windows Server 2003 Ŕ in esecuzione Microsoft .NET Framework 1.1 Service Pack 1 (SP1), applicare l'aggiornamento rapido Ŕ descritto nel seguente della Microsoft Knowledge Base:
924421FIX: Applicazione deteriorates prestazioni o il computer a si blocca quando si esegue un'applicazione basata su .NET Framework 1.1 Service Pack 1 su un computer basato su Windows 2003

Messaggio di errore "ACCESS_DENIED" quando si tenta di avviare la registrazione contatori delle prestazioni di CLR

Quando si tenta di avviare la registrazione contatori delle prestazioni di CLR, viene potrebbe essere visualizzato un messaggio di errore analogo al seguente:
Codice di errore 5 (ACCESS_DENIED)
Impossibile aprire la chiave del Registro di sistema di versione database di shim - v2.0.50727.00000. La procedura Open per il servizio ".NETFramework" nella DLL "D:\WINNT\system32\mscoree.dll" non Ŕ riuscita. I dati delle prestazioni per questo servizio non sarÓ disponibili. Il codice di stato restituito Ŕ il primo DWORD nei dati allegati. Il codice di stato Ŕ 5 (ACCESS_DENIED)
Questo problema si verifica perchÚ il primo processo per caricare il contatore delle prestazioni CLR DLL (Corperfmonext.dll) crea un evento denominato per la comunicazione IPC (Inter-Process Communication). Viene creato un evento denominato utilizza le autorizzazioni per l'ID utente del processo.

Ad esempio, un utente con autorizzazioni amministrative inizia Perfmon. Quindi, l'utente inizia a monitorare i contatori delle prestazioni di CLR. L'evento denominato viene creato utilizzando autorizzazioni concesse al gruppo Administrators. In questo scenario, l'utente riceve il messaggio di errore se l'utente tenta di avviare la registrazione contatori delle prestazioni di CLR. Questo problema si verifica perchÚ il servizio "Avvisi e registri di prestazioni" non pu˛ accedere all'evento denominato.

Per risolvere questo problema, consentono di caricare prima il file Corperfmonext.dll nel servizio "Avvisi e registri di prestazioni". Per effettuare questa operazione, attenersi alla seguente procedura:
  1. Fare clic su Start , scegliere Esegui , digitare cmd e quindi fare clic su OK .
  2. Al prompt dei comandi, digitare tasklist -m corperfmonext.dll e quindi premere INVIO. Nota ogni processo che Ŕ elencato.
  3. Al prompt dei comandi, digitare taskmgr e quindi premere INVIO.
  4. Nella scheda processi , fare clic su ogni processo annotato nel passaggio 2 e quindi scegliere Termina processo .
  5. Fare clic su Start , scegliere Esegui , digitare Perfmon e quindi fare clic su OK .
  6. Espandere avvisi e registri di prestazioni e quindi fare clic su Registri contatori .
  7. Fare clic con il pulsante destro del mouse sul servizio che si desidera utilizzare e quindi fare clic su Start .
Nota Questo problema Ŕ pianificato per essere risolto in una versione futura di .NET Framework.

╚ Impossibile monitorare programmi gestiti di 32 bit nella versione a 64 bit di Perfmon

Questo problema si verifica perchÚ la versione a 64 bit del file Corperfmonext.dll enumera solo i processi a 64 bit. Inoltre, la versione a 32 bit del file Corperfmonext.dll enumera solo i processi a 32 bit. Per visualizzare programmi gestiti di 32 bit su un computer a 64 bit, fare clic su Start , scegliere Esegui , digitare SystemRoot%\SysWOW64\perfmon.exe e quindi fare clic su OK .

Nota Questo problema Ŕ pianificato per essere risolto in una versione futura di .NET Framework.

PerfMon non rileva un programma gestito il riavvio del computer remoto

Questo problema si verifica perchÚ il servizio di registro di sistema remoto viene eseguito con l'account servizio locale. L'account di servizio locale non Ŕ un membro del gruppo Performance Monitor Users o del gruppo Performance Log Users . Di conseguenza, l'account servizio locale non ha accesso al blocco di IPC del contatore delle prestazioni CLR. Tuttavia, Ŕ possibile monitorare i contatori di prestazioni CLR perchÚ il servizio Registro di sistema remoto rappresenta l'utente che ha iniziato il monitoraggio.

Tuttavia, se si riavvia il processo monitorato, un nuovo blocco IPC Ŕ aperti da un thread ausiliario nel servizio Registro di sistema remoto. Questo thread ausiliario non rappresenta l'utente del client. Di conseguenza, il thread non pu˛ accedere il blocco IPC del contatore delle prestazioni CLR. Per aggirare il problema, riavviare il monitoraggio contatori delle prestazioni dal client.

Pi¨ contatori di prestazioni di CLR visualizzati che hanno nomi simili a "W3wp # 1"

Quando vengono eseguite pi¨ processi ASP.NET Worker, contatori delle prestazioni CLR con nomi simili "W3wp # 1"o"W3sp # 2" potrebbe essere visualizzato. In .NET Framework 2.0, un contatore denominato ID di processo Ŕ stato aggiunto l'oggetto di prestazioni memoria CLR. NET. Questo contatore indica l'ID di processo per un'istanza. ╚ possibile utilizzare questo contatore per determinare il contatore delle prestazioni CLR associato a un processo.

Se non Ŕ possibile visualizzare un contatore denominato ID di processo in Memoria CLR. NET , i simboli del contatore delle prestazioni non siano installati correttamente. Per risolvere il problema, attenersi alla seguente procedura:
  1. Fare clic su Start , scegliere Esegui , digitare cmd e quindi fare clic su OK .
  2. Al prompt dei comandi, digitare unlodctr .NetFramework e quindi premere INVIO.
  3. Utilizzare il comando cd per passare alla cartella \Microsoft.Net\Framework\v2.0.50727.
  4. Al prompt dei comandi, digitare lodctr corperfmonsymbols.ini e quindi premere INVIO.

ProprietÓ

Identificativo articolo: 922775 - Ultima modifica: martedý 14 agosto 2007 - Revisione: 1.2
Le informazioni in questo articolo si applicano a:
  • Microsoft .NET Framework 2.0
Chiavi:á
kbmt kbregistry kbperformancetool kbperfmon kbmsg kbinput kbfaq kbtshoot kbprb KB922775 KbMtit
Traduzione automatica articoli
Il presente articolo Ŕ stato tradotto tramite il software di traduzione automatica di Microsoft e non da una persona. Microsoft offre sia articoli tradotti da persone fisiche sia articoli tradotti automaticamente da un software, in modo da rendere disponibili tutti gli articoli presenti nella nostra Knowledge Base nella lingua madre dell?utente. Tuttavia, un articolo tradotto in modo automatico non Ŕ sempre perfetto. Potrebbe contenere errori di sintassi, di grammatica o di utilizzo dei vocaboli, pi¨ o meno allo stesso modo di come una persona straniera potrebbe commettere degli errori parlando una lingua che non Ŕ la sua. Microsoft non Ŕ responsabile di alcuna imprecisione, errore o danno cagionato da qualsiasi traduzione non corretta dei contenuti o dell?utilizzo degli stessi fatto dai propri clienti. Microsoft, inoltre, aggiorna frequentemente il software di traduzione automatica.
Clicca qui per visualizzare la versione originale in inglese dell?articolo: 922775
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

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