Cómo: Configurar instancias de componentes PerformanceCounter
Actualización: noviembre 2007
Hay varias propiedades que deben definirse en los componentes PerformanceCounter que cree. Éstas determinan el contador con el que interactúa el componente. Las propiedades que debe establecer incluyen lo siguiente:
CategoryName, que determina el objeto de rendimiento con el que interactuará el componente. Todos los contadores de rendimiento de Windows se agrupan en categorías, como Memoria, Procesos y Procesador.
CounterName, que determina el contador de la categoría especificada con el que interactuará el componente.
InstanceName, que determina la instancia de la categoría con la que interactuará el componente. Observe que muchas categorías no contienen instancias. Por consiguiente, esta propiedad debe dejarse en blanco. Esto indica un contador de una sola instancia.
Nota: Si la categoría se establece en una categoría no definida por el usuario, deberá elegir entre los contadores y las instancias existentes. Sólo es posible crear nuevos contadores e instancias en categorías personalizadas. Por ejemplo, no puede crear un nuevo contador en la categoría Memoria, pero si crea una nueva categoría denominada Pedidos, podrá definir tantos contadores e instancias como desee dentro de esta categoría.
MachineName, que identifica el servidor donde reside el contador de rendimiento con el que desea que interactúe el componente. Se puede establecer esta propiedad en "." para indicar el equipo local o dejarla en blanco para que use este valor de forma predeterminada.
ReadOnly, que determina si se puede escribir en cualquier contador personalizado que haya creado. De forma predeterminada, cualquier instancia del componente PerformanceCounter que configure para trabajar con contadores de Windows existentes funciona en modo de sólo lectura y no permitirá modificar los valores de dichos contadores. Sin embargo, cuando se configura la instancia del componente para que trabaje con un contador personalizado, se puede aceptar la opción predeterminada de trabajo en modo de sólo lectura, o bien restablecer el valor de la propiedad en false para que se puedan escribir valores.
Nota: Sólo se pueden escribir contadores en el equipo local. Si tiene previsto leer valores de contador, puede elegir cualquier equipo al que tenga acceso.
Para configurar una instancia del componente PerformanceCounter
Cree una instancia del componente PerformanceCounter. Para obtener más información, vea Cómo: Crear instancias de componentes PerformanceCounter.
Indique el contador con el cual debe interactuar su componente estableciendo las siguientes propiedades.
Propiedad
Valor
Cualquier servidor al que tenga acceso.
Cualquiera de las categorías existentes en el servidor.
Cualquier contador en la categoría seleccionada.
Si el contador con el que interactúa la aplicación tiene varias instancias, establezca la instancia adecuada como valor de la propiedad InstanceName.
Si trabaja con un contador personalizado y desea tener acceso de escritura, establezca la propiedad ReadOnly en false.
Nota: Estas propiedades se pueden establecer en la ventana Propiedades, mediante código o utilizando formas especiales del constructor en la instancia del componente PerformanceCounter.
En el ejemplo siguiente se muestra cómo establecer estos valores mediante programación para conectarse a un contador de rendimiento existente de Windows denominado "transacciones anuladas" en el servidor local.
' Connect to an existing Windows counter and category Dim abortedTransactions As New PerformanceCounter() abortedTransactions.CategoryName = _ "distributed transaction coordinator" abortedTransactions.CounterName = "aborted transactions" abortedTransactions.MachineName = "." ' Connect to a custom counter and category in writable mode PerformanceCounterCategory.Create("orders", "desc", _ PerformanceCounterCategoryType.SingleInstance, "milk", "desc") Dim myCounter2 As New PerformanceCounter("orders", "milk", False)
// Connect to an existing Windows counter and category System.Diagnostics.PerformanceCounter abortedTransactions = new System.Diagnostics.PerformanceCounter(); abortedTransactions.CategoryName = "distributed transaction coordinator"; abortedTransactions.CounterName = "aborted transactions"; abortedTransactions.MachineName = "."; // Connect to a custom counter and category in writable mode System.Diagnostics.PerformanceCounterCategory.Create( "orders", "desc", PerformanceCounterCategoryType.SingleInstance, "milk", "desc"); System.Diagnostics.PerformanceCounter myCounter2 = new System.Diagnostics.PerformanceCounter("orders", "milk", false);
Nota: |
---|
En el fragmento de código anterior, "." representa el equipo local. |
Vea también
Tareas
Cómo: Crear instancias de componentes PerformanceCounter
Cómo: Crear contadores de rendimiento personalizados