Procedura: determinare l’esistenza di contatori e categorie
Aggiornamento: novembre 2007
È possibile utilizzare il metodo CounterExists della classe PerformanceCounterCategory per determinare l'esistenza di un determinato contatore delle prestazioni in una categoria specifica nel computer locale o in un computer remoto. Tale verifica andrebbe effettuata prima di creare un nuovo contatore, in modo da evitare la generazione di un errore nel caso in cui esista già un altro contatore con lo stesso nome.
Oltre a determinare l'esistenza dei contatori, è possibile stabilire se una determinata categoria esiste usando il metodo Exists della classe PerformanceCounterCategory. Effettuare questa verifica se si crea un contatore personalizzato e si desidera stabilire se esiste già una categoria. Se la categoria specificata è già stata creata, il metodo Create genererà un errore.
Entrambi i metodi Exists e CounterExists restituiscono il valore true se l'elemento viene trovato. In caso contrario, restituiscono il valore false.
Per determinare se un contatore esiste
Chiamare il metodo Exists della classe PerformanceCounterCategory, specificando i parametri riportati di seguito.
Parametro
Valore
CounterName
Il nome del contatore di cui eseguire una query.
CategoryName
Qualunque categoria di oggetti delle prestazioni sul server.
MachineName
Il server su cui individuare la categoria e il contatore.
Nota: In Visual Basic il parametro MachineName è facoltativo. Se non viene specificato alcun valore, il computer locale viene utilizzato per impostazione predefinita. In C# è possibile utilizzare un overload del metodo Exists se non si desidera specificare il nome del computer.
Per determinare se una categoria esiste
Chiamare il metodo Exists della classe PerformanceCounterCategory, specificando i parametri riportati di seguito.
Parametro
Valore
CategoryName
Qualsiasi categoria di cui eseguire una query.
MachineName
Il server su cui individuare la categoria.
Nell'esempio riportato di seguito viene illustrato come utilizzare un’istruzione If per determinare l'esistenza di una categoria prima di creare una categoria e un contatore:
If Not (PerformanceCounterCategory.Exists("MyCat")) Then PerformanceCounterCategory.Create( _ "MyCat", "Description", _ PerformanceCounterCategoryType.SingleInstance, _ "MyCounter", "Description") End If
if (!System.Diagnostics.PerformanceCounterCategory.Exists("MyCat")) { System.Diagnostics.PerformanceCounterCategory.Create( "MyCat", "Description", PerformanceCounterCategoryType.SingleInstance, "MyCounter", "Description"); }
Vedere anche
Attività
Procedura: scrivere valori nei contatori delle prestazioni