Cómo: Determinar si existen contadores y categorías
Actualización: noviembre 2007
Puede usar el método CounterExists de la clase PerformanceCounterCategory para determinar si existe un contador de rendimiento específico en una categoría concreta en el equipo local o en un equipo remoto. Puede hacer esto antes de crear un nuevo contador para impedir que se produzca un error si existe otro contador con ese nombre.
Además de determinar si existen contadores, puede determinar si existe una categoría determinada mediante el método Exists de la clase PerformanceCounterCategory. Puede hacerlo si está creando un contador personalizado y desea determinar si existe la categoría correspondiente. El método Create producirá un error si la categoría especificada ya se ha creado.
Los métodos Exists y CounterExists devuelven true si se encuentra el elemento y false, si no se encuentra.
Para determinar si existe un contador
Llame al método Exists de la clase PerformanceCounterCategory y especifique los siguientes parámetros:
Parámetro
Valor
CounterName
Nombre del contador que se desea consultar.
CategoryName
Cualquier categoría de objetos de rendimiento existente en el servidor.
MachineName
El servidor donde se encuentran la categoría y el contador.
Nota: En Visual Basic, el parámetro MachineName es opcional; si se deja en blanco, usa el equipo local de forma predeterminada. En C#, puede utilizar una sobrecarga del método Exists si no desea especificar el nombre del equipo.
Para determinar si existe una categoría
Llame al método Exists de la clase PerformanceCounterCategory y especifique los siguientes parámetros:
Parámetro
Valor
CategoryName
Cualquier categoría que se desee consultar.
MachineName
El servidor donde se encuentra la categoría.
En el ejemplo siguiente se muestra cómo se utiliza una instrucción If para determinar si existe una categoría antes de crear una categoría y un contador:
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"); }
Vea también
Tareas
Cómo: Escribir valores en los contadores de rendimiento