Procedura: creare contatori delle prestazioni personalizzati
Aggiornamento: novembre 2007
Quando si crea un nuovo contatore, si crea prima una categoria, poi si specificano uno o più contatori da inserire in essa. A tale proposito, è possibile procedere come indicato di seguito:
È possibile utilizzare Esplora server per creare uno o più contatori in fase di progettazione.
È possibile utilizzare la classe CounterCreationData per creare uno o più contatori a livello di codice, aggiungerli a un insieme di tipo CounterCreationDataCollection e passare l’insieme come parametro di formato speciale del metodo Create.
È possibile utilizzare il metodo Create della classe PerformanceCounterCategory per creare un singolo contatore all'interno di una nuova categoria. Per ulteriori informazioni, vedere Procedura: creare categorie di contatori delle prestazioni.
Quando si creano contatori e categorie, è necessario considerare due fattori fondamentali. In primo luogo, non è possibile creare categorie e contatori personalizzati su computer remoti. In secondo luogo, l'interazione con le categorie e i contatori personalizzati è limitata alla sola lettura, a meno che non si specifichi diversamente. In sola lettura non sono possibili l'incremento e l'impostazione di valori né elaborati né di altro genere. Per ottenere un contatore personalizzato su cui sia possibile scrivere, utilizzare la proprietà ReadOnly.
È importante tenere presente la differenza tra la creazione di un contatore e la creazione di un'istanza del componente PerformanceCounter. Quando si crea un contatore, si crea una nuova categoria e i rispettivi contatori associati nel sistema operativo Windows, non un componente del progetto o dell’applicazione. Quando si crea un'istanza del componente PerformanceCounter, si crea un componente all'interno del progetto di Visual Studio che fa riferimento a un contatore esterno.
Nota: |
---|
Esistono restrizioni di protezione che influiscono sulla possibilità dell'utente di utilizzare i contatori delle prestazioni. Per ulteriori informazioni, vedere Introduzione al monitoraggio dei valori limite delle prestazioni. |
Nota sulla sicurezza: |
---|
Quando si crea un contatore delle prestazioni, tenere presente che la risorsa potrebbe essere già esistente. Un altro processo, magari dannoso, potrebbe avere già creato la risorsa e potrebbe essere in grado di accedervi. Le informazioni inserite nel contatore delle prestazioni diventano disponibili ad altri processi. |
Nota: |
---|
La classe PerformanceCounter non è completamente supportata in Microsoft Windows NT versione 4.0. È possibile leggere dai contatori di sistema, ma non è possibile creare o eliminare i contatori personalizzati, né scrivervi. |
Nota: |
---|
Nel computer in uso è possibile che vengano visualizzati nomi o percorsi diversi per alcuni elementi dell'interfaccia utente di Visual Studio nelle istruzioni seguenti. La versione di Visual Studio in uso e le impostazioni configurate determinano questi elementi. Per ulteriori informazioni vedere Impostazioni di Visual Studio. |
Per creare una nuova categoria e un nuovo contatore delle prestazioni personalizzato in fase di progettazione
Aprire Esplora server ed espandere il nodo corrispondente al server che si desidera visualizzare.
Nota: Se il server desiderato non è presente nell'elenco, è necessario aggiungerlo. Per ulteriori informazioni, vedere Procedura: accedere e inizializzare Esplora server/Esplora database.
Fare clic con il pulsante destro del mouse sul nodo Contatori delle prestazioni e selezionare Crea nuova categoria.
Verrà visualizzata la finestra di dialogo Generatore contatori delle prestazioni.
Nota: Per accedere ai contatori delle prestazioni è necessario essere un membro del gruppo di sicurezza che ha accesso ai contatori delle prestazioni, ad esempio il gruppo Performance Monitor Users. Inoltre, è possibile ricevere richieste su Windows Vista quando si tenta di eseguire un'azione che richiede privilegi elevati, anche durante l'esecuzione con autorizzazioni amministrative. Per ulteriori informazioni, vedere Windows Vista e Visual Studio.
Immettere un nome e una descrizione per la categoria da creare.
Nota: Se si specifica il nome di una categoria esistente, viene generato un errore. Per sovrascrivere una categoria di contatori esistente, è prima necessario eliminarla usando il metodo Delete, quindi aggiungere una nuova categoria.
Nel frame Generatore elenco contatori, procedere come indicato di seguito:
Scegliere il pulsante Nuovo.
Nel frame Contatore specificare un nome per il contatore da creare all'interno della categoria.
Scegliere un tipo dall'elenco a discesa Tipo.
Immettere una descrizione per il contatore.
Ripetere il passaggio 4 per ciascun contatore da creare nella categoria.
Suggerimento: Prima di chiudere la finestra di dialogo, è possibile selezionare uni dei contatori presenti nell’elenco Contatori per modificarne i valori oppure eliminarli.
Nota: Per impostazione predefinita, le categorie e i contatori creati nella finestra di dialogo sono abilitati per la lettura e la scrittura. Se si utilizza tuttavia un'istanza del componente PerformanceCounter, tali elementi risultano in sola lettura, se non diversamente specificato.
Per creare una nuova categoria e un insieme di contatori delle prestazioni a livello di codice
Creare un insieme di tipo CounterCreationDataCollection.
Creare i contatori che si desidera configurare come oggetti di tipo CounterCreationData e impostarne le proprietà necessarie.
Aggiungere gli oggetti CounterCreationData all’insieme chiamando il relativo metodo Add.
Chiamare il metodo Create della classe PerformanceCounterCategory e passarvi l’insieme.
Nell’esempio seguente viene mostrato come creare una serie di contatori e passarli alla categoria quando la si crea:
' Create a collection of type CounterCreationDataCollection. Dim CounterDatas As New CounterCreationDataCollection() ' Create the counters and set their properties. Dim cdCounter1 As New CounterCreationData() Dim cdCounter2 As New CounterCreationData() cdCounter1.CounterName = "MyCounter1" cdCounter1.CounterHelp = "help string" cdCounter1.CounterType = PerformanceCounterType.NumberOfItems64 cdCounter2.CounterName = "MyCounter2" cdCounter2.CounterHelp = "help string 2" cdCounter2.CounterType = PerformanceCounterType.NumberOfItems64 ' Add both counters to the collection. CounterDatas.Add(cdCounter1) CounterDatas.Add(cdCounter2) ' Create the category and pass the collection to it. PerformanceCounterCategory.Create("Multi Counter Category", _ "Category help", PerformanceCounterCategoryType.SingleInstance, _ CounterDatas)
// Create a collection of type CounterCreationDataCollection. System.Diagnostics.CounterCreationDataCollection CounterDatas = new System.Diagnostics.CounterCreationDataCollection(); // Create the counters and set their properties. System.Diagnostics.CounterCreationData cdCounter1 = new System.Diagnostics.CounterCreationData(); System.Diagnostics.CounterCreationData cdCounter2 = new System.Diagnostics.CounterCreationData(); cdCounter1.CounterName = "Counter1"; cdCounter1.CounterHelp = "help string1"; cdCounter1.CounterType = System.Diagnostics.PerformanceCounterType.NumberOfItems64; cdCounter2.CounterName = "Counter2"; cdCounter2.CounterHelp = "help string 2"; cdCounter2.CounterType = System.Diagnostics.PerformanceCounterType.NumberOfItems64; // Add both counters to the collection. CounterDatas.Add(cdCounter1); CounterDatas.Add(cdCounter2); // Create the category and pass the collection to it. System.Diagnostics.PerformanceCounterCategory.Create( "Multi Counter Category", "Category help", PerformanceCounterCategoryType.SingleInstance, CounterDatas);
Vedere anche
Attività
Procedura: creare categorie di contatori delle prestazioni
Concetti
Gestione di categorie e contatori
Riferimenti
Procedura: accedere e inizializzare Esplora server/Esplora database