PerformanceCounterCategory.Create Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Registra una categoría de contador de rendimiento personalizado y uno o varios contadores con el sistema.
Sobrecargas
| Nombre | Description |
|---|---|
| Create(String, String, String, String) |
Obsoletos.
Registra una categoría de contador de rendimiento personalizado que contiene un único contador de tipo |
| Create(String, String, PerformanceCounterCategoryType, String, String) |
Registra la categoría del contador de rendimiento personalizado que contiene un único contador de tipo NumberOfItems32 en el equipo local. |
| Create(String, String, CounterCreationDataCollection) |
Obsoletos.
Registra la categoría del contador de rendimiento personalizado que contiene los contadores especificados en el equipo local. |
| Create(String, String, PerformanceCounterCategoryType, CounterCreationDataCollection) |
Registra la categoría del contador de rendimiento personalizado que contiene los contadores especificados en el equipo local. |
Create(String, String, String, String)
Precaución
This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. http://go.microsoft.com/fwlink/?linkid=14202
Registra una categoría de contador de rendimiento personalizado que contiene un único contador de tipo NumberOfItems32 en el equipo local.
public:
static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::String ^ counterName, System::String ^ counterHelp);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
[System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. http://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, string counterName, string counterHelp);
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, string counterName, string counterHelp) instead. http://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * string * string -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, counterName As String, counterHelp As String) As PerformanceCounterCategory
Parámetros
- categoryName
- String
Nombre de la categoría del contador de rendimiento personalizado que se va a crear y registrar con el sistema.
- categoryHelp
- String
Descripción de la categoría personalizada.
- counterName
- String
Nombre de un nuevo contador, de tipo NumberOfItems32, que se va a crear como parte de la nueva categoría.
- counterHelp
- String
Descripción del contador asociado a la nueva categoría personalizada.
Devoluciones
que PerformanceCounterCategory está asociado a la nueva categoría del sistema o al objeto de rendimiento.
- Atributos
Excepciones
counterName es null o es una cadena vacía ("").
O bien
El contador especificado por counterName ya existe.
O bien
counterName tiene sintaxis no válida. Puede contener caracteres de barra diagonal inversa ("\") o tener una longitud superior a 80 caracteres.
La categoría ya existe en el equipo local.
Error en una llamada a una API del sistema subyacente.
Código que se ejecuta sin privilegios administrativos intenta leer un contador de rendimiento.
Comentarios
Note
Para leer los contadores de rendimiento de una sesión de inicio de sesión no interactiva en Windows Vista y versiones posteriores, Windows XP Professional x64 Edition o Windows Server 2003, debe ser miembro del grupo Usuarios del Monitor de rendimiento o tener privilegios administrativos.
Para evitar tener que elevar sus privilegios para acceder a los contadores de rendimiento en Windows Vista y versiones posteriores, agréguese al grupo Usuarios del Monitor de rendimiento.
En Windows Vista y versiones posteriores, el Control de cuentas de usuario (UAC) determina los privilegios de un usuario. Si es miembro del grupo Administradores integrados, se le asignan dos tokens de acceso en tiempo de ejecución: un token de acceso de usuario estándar y un token de acceso de administrador. De forma predeterminada, está en el rol de usuario estándar. Para ejecutar el código que accede a los contadores de rendimiento, primero debe elevar sus privilegios de usuario estándar a administrador. Puede hacerlo al iniciar una aplicación haciendo clic con el botón derecho en el icono de la aplicación e indicando que desea ejecutar como administrador.
Consulte también
Se aplica a
Create(String, String, PerformanceCounterCategoryType, String, String)
Registra la categoría del contador de rendimiento personalizado que contiene un único contador de tipo NumberOfItems32 en el equipo local.
public:
static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::Diagnostics::PerformanceCounterCategoryType categoryType, System::String ^ counterName, System::String ^ counterHelp);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.PerformanceCounterCategoryType categoryType, string counterName, string counterHelp);
static member Create : string * string * System.Diagnostics.PerformanceCounterCategoryType * string * string -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, categoryType As PerformanceCounterCategoryType, counterName As String, counterHelp As String) As PerformanceCounterCategory
Parámetros
- categoryName
- String
Nombre de la categoría del contador de rendimiento personalizado que se va a crear y registrar con el sistema.
- categoryHelp
- String
Descripción de la categoría personalizada.
- categoryType
- PerformanceCounterCategoryType
Uno de los PerformanceCounterCategoryType valores que especifican si la categoría es MultiInstance, SingleInstanceo Unknown.
- counterName
- String
Nombre de un nuevo contador que se va a crear como parte de la nueva categoría.
- counterHelp
- String
Descripción del contador asociado a la nueva categoría personalizada.
Devoluciones
que PerformanceCounterCategory está asociado a la nueva categoría del sistema o al objeto de rendimiento.
Excepciones
counterName es null o es una cadena vacía ("").
O bien
El contador especificado por counterName ya existe.
O bien
counterName tiene sintaxis no válida. Puede contener caracteres de barra diagonal inversa ("\") o tener una longitud superior a 80 caracteres.
La categoría ya existe en el equipo local.
Error en una llamada a una API del sistema subyacente.
Código que se ejecuta sin privilegios administrativos intenta leer un contador de rendimiento.
Ejemplos
En el ejemplo de código siguiente se muestra el uso del Create método . En el ejemplo se muestra cómo crear una categoría de contador de rendimiento de instancia única personalizada.
Console.WriteLine("Creating Inventory custom counter");
if (!PerformanceCounterCategory.Exists("Inventory"))
PerformanceCounterCategory.Create("Inventory",
"Truck inventory",
PerformanceCounterCategoryType.SingleInstance,
"Trucks", "Number of trucks on hand");
Console.WriteLine("Creating Inventory custom counter")
If Not PerformanceCounterCategory.Exists("Inventory") Then
PerformanceCounterCategory.Create("Inventory", "Truck inventory", PerformanceCounterCategoryType.SingleInstance, "Trucks", "Number of trucks on hand")
End If
Comentarios
El categoryType parámetro especifica si la categoría del contador de rendimiento es de instancia única o de varias instancias. De forma predeterminada, una categoría es una instancia única cuando se crea y se convierte en una instancia múltiple cuando se agrega otra instancia. Las categorías se crean cuando se configura una aplicación y se agregan instancias en tiempo de ejecución. La PerformanceCounterCategoryType enumeración se usa para indicar si un contador de rendimiento puede tener varias instancias.
Las categorías de contadores de rendimiento instaladas con .NET usan memoria compartida independiente, con cada categoría de contador de rendimiento que tenga su propia memoria. Puede especificar el tamaño de la memoria compartida independiente creando un DWORD denominado FileMappingSize en la clave del Registro HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<nombre> de categoría\Rendimiento. El valor FileMappingSize se establece en el tamaño de memoria compartida de la categoría. El tamaño predeterminado es 131072 decimal. Si el valor FileMappingSize no está presente, se usa el valor de fileMappingSize atributo del elemento especificado en el archivo Machine.config, lo que provoca una sobrecarga adicional para el performanceCounters procesamiento de archivos de configuración. Puede realizar una mejora del rendimiento para el inicio de la aplicación estableciendo el tamaño de asignación de archivos en el Registro.
Note
Se recomienda encarecidamente crear nuevas categorías de contadores de rendimiento durante la instalación de la aplicación, no durante la ejecución de la aplicación. Esto permite que el sistema operativo actualice su lista de categorías de contadores de rendimiento registrados. Si no se ha actualizado la lista, se producirá un error al intentar usar la categoría.
Note
Para leer los contadores de rendimiento de una sesión de inicio de sesión no interactiva en Windows Vista y versiones posteriores, Windows XP Professional x64 Edition o Windows Server 2003, debe ser miembro del grupo Usuarios del Monitor de rendimiento o tener privilegios administrativos.
Para evitar tener que elevar sus privilegios para acceder a los contadores de rendimiento en Windows Vista y versiones posteriores, agréguese al grupo Usuarios del Monitor de rendimiento.
En Windows Vista y versiones posteriores, el Control de cuentas de usuario (UAC) determina los privilegios de un usuario. Si es miembro del grupo Administradores integrados, se le asignan dos tokens de acceso en tiempo de ejecución: un token de acceso de usuario estándar y un token de acceso de administrador. De forma predeterminada, está en el rol de usuario estándar. Para ejecutar el código que accede a los contadores de rendimiento, primero debe elevar sus privilegios de usuario estándar a administrador. Puede hacerlo al iniciar una aplicación haciendo clic con el botón derecho en el icono de la aplicación e indicando que desea ejecutar como administrador.
Consulte también
Se aplica a
Create(String, String, CounterCreationDataCollection)
Precaución
This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. http://go.microsoft.com/fwlink/?linkid=14202
Registra la categoría del contador de rendimiento personalizado que contiene los contadores especificados en el equipo local.
public:
static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::Diagnostics::CounterCreationDataCollection ^ counterData);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
[System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. http://go.microsoft.com/fwlink/?linkid=14202")]
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.CounterCreationDataCollection counterData);
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
[<System.Obsolete("This method has been deprecated. Please use System.Diagnostics.PerformanceCounterCategory.Create(string categoryName, string categoryHelp, PerformanceCounterCategoryType categoryType, CounterCreationDataCollection counterData) instead. http://go.microsoft.com/fwlink/?linkid=14202")>]
static member Create : string * string * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, counterData As CounterCreationDataCollection) As PerformanceCounterCategory
Parámetros
- categoryName
- String
Nombre de la categoría del contador de rendimiento personalizado que se va a crear y registrar con el sistema.
- categoryHelp
- String
Descripción de la categoría personalizada.
- counterData
- CounterCreationDataCollection
que CounterCreationDataCollection especifica los contadores que se van a crear como parte de la nueva categoría.
Devoluciones
que PerformanceCounterCategory está asociado a la nueva categoría personalizada o al objeto de rendimiento.
- Atributos
Excepciones
Un nombre de contador especificado dentro de la counterData colección es null o una cadena vacía ("").
O bien
Ya existe un contador especificado dentro de la counterData colección.
El categoryName parámetro es null.
La categoría ya existe en el equipo local.
O bien
El diseño de la counterData colección es incorrecto para los contadores base. Un contador de tipo AverageCount64, , CounterMultiTimerAverageTimer32, CounterMultiTimerInverseCounterMultiTimer100Ns, CounterMultiTimer100NsInverse, , RawFractionSampleFraction o SampleCounter debe ir seguido inmediatamente de uno de los tipos de contador base (AverageBase, MultiBase, RawBaseo SampleBase).
Error en una llamada a una API del sistema subyacente.
Código que se ejecuta sin privilegios administrativos intenta leer un contador de rendimiento.
Comentarios
Note
Para leer los contadores de rendimiento de una sesión de inicio de sesión no interactiva en Windows Vista y versiones posteriores, Windows XP Professional x64 Edition o Windows Server 2003, debe ser miembro del grupo Usuarios del Monitor de rendimiento o tener privilegios administrativos.
Para evitar tener que elevar sus privilegios para acceder a los contadores de rendimiento en Windows Vista y versiones posteriores, agréguese al grupo Usuarios del Monitor de rendimiento.
En Windows Vista y versiones posteriores, el Control de cuentas de usuario (UAC) determina los privilegios de un usuario. Si es miembro del grupo Administradores integrados, se le asignan dos tokens de acceso en tiempo de ejecución: un token de acceso de usuario estándar y un token de acceso de administrador. De forma predeterminada, está en el rol de usuario estándar. Para ejecutar el código que accede a los contadores de rendimiento, primero debe elevar sus privilegios de usuario estándar a administrador. Puede hacerlo al iniciar una aplicación haciendo clic con el botón derecho en el icono de la aplicación e indicando que desea ejecutar como administrador.
Consulte también
Se aplica a
Create(String, String, PerformanceCounterCategoryType, CounterCreationDataCollection)
Registra la categoría del contador de rendimiento personalizado que contiene los contadores especificados en el equipo local.
public:
static System::Diagnostics::PerformanceCounterCategory ^ Create(System::String ^ categoryName, System::String ^ categoryHelp, System::Diagnostics::PerformanceCounterCategoryType categoryType, System::Diagnostics::CounterCreationDataCollection ^ counterData);
public static System.Diagnostics.PerformanceCounterCategory Create(string categoryName, string categoryHelp, System.Diagnostics.PerformanceCounterCategoryType categoryType, System.Diagnostics.CounterCreationDataCollection counterData);
static member Create : string * string * System.Diagnostics.PerformanceCounterCategoryType * System.Diagnostics.CounterCreationDataCollection -> System.Diagnostics.PerformanceCounterCategory
Public Shared Function Create (categoryName As String, categoryHelp As String, categoryType As PerformanceCounterCategoryType, counterData As CounterCreationDataCollection) As PerformanceCounterCategory
Parámetros
- categoryName
- String
Nombre de la categoría del contador de rendimiento personalizado que se va a crear y registrar con el sistema.
- categoryHelp
- String
Descripción de la categoría personalizada.
- categoryType
- PerformanceCounterCategoryType
Uno de los PerformanceCounterCategoryType valores.
- counterData
- CounterCreationDataCollection
que CounterCreationDataCollection especifica los contadores que se van a crear como parte de la nueva categoría.
Devoluciones
que PerformanceCounterCategory está asociado a la nueva categoría personalizada o al objeto de rendimiento.
Excepciones
Un nombre de contador especificado dentro de la counterData colección es null o una cadena vacía ("").
O bien
Ya existe un contador especificado dentro de la counterData colección.
categoryType value está fuera del intervalo de los valores siguientes: MultiInstance, SingleInstanceo Unknown.
La categoría ya existe en el equipo local.
O bien
El diseño de la counterData colección es incorrecto para los contadores base. Un contador de tipo AverageCount64, , CounterMultiTimerCounterMultiTimerInverseRawFractionCounterMultiTimer100NsAverageTimer32CounterMultiTimer100NsInverse, , SampleFractiono SampleCounter debe ir seguido inmediatamente de uno de los tipos de contador base (AverageBase, MultiBase, RawBaseo ).SampleBase
Error en una llamada a una API del sistema subyacente.
Código que se ejecuta sin privilegios administrativos intenta leer un contador de rendimiento.
Ejemplos
En el ejemplo de código siguiente se muestra el uso del Create método . En el ejemplo se muestra cómo crear una categoría de contador de rendimiento de instancias múltiples personalizada para el número de pedidos por segundo.
CounterCreationData data1 = new CounterCreationData("Trucks",
"Number of orders", PerformanceCounterType.NumberOfItems32);
CounterCreationData data2 = new CounterCreationData("Rate of sales",
"Orders/second", PerformanceCounterType.RateOfCountsPerSecond32);
CounterCreationDataCollection ccds = new CounterCreationDataCollection();
ccds.Add(data1);
ccds.Add(data2);
Console.WriteLine("Creating Orders custom counter.");
if (!PerformanceCounterCategory.Exists("Orders"))
PerformanceCounterCategory.Create("Orders",
"Processed orders",
PerformanceCounterCategoryType.MultiInstance,
ccds);
Dim data1 As New CounterCreationData("Trucks", "Number of orders", PerformanceCounterType.NumberOfItems32)
Dim data2 As New CounterCreationData("Rate of sales", "Orders/second", PerformanceCounterType.RateOfCountsPerSecond32)
Dim ccds As New CounterCreationDataCollection()
ccds.Add(data1)
ccds.Add(data2)
Console.WriteLine("Creating Orders custom counter.")
If Not PerformanceCounterCategory.Exists("Orders") Then
PerformanceCounterCategory.Create("Orders", "Processed orders", PerformanceCounterCategoryType.MultiInstance, ccds)
End If
Comentarios
El categoryType parámetro especifica si la categoría del contador de rendimiento es de instancia única o de varias instancias. De forma predeterminada, una categoría es una instancia única cuando se crea y se convierte en una instancia múltiple cuando se agrega otra instancia. Las categorías se crean cuando se configura una aplicación y se agregan instancias en tiempo de ejecución. La PerformanceCounterCategoryType enumeración se usa para indicar si un contador de rendimiento puede tener varias instancias.
Las categorías de contadores de rendimiento instaladas con .NET usan memoria compartida independiente, con cada categoría de contador de rendimiento que tenga su propia memoria. Puede especificar el tamaño de la memoria compartida independiente creando un DWORD denominado FileMappingSize en la clave del Registro HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<nombre> de categoría\Rendimiento. El valor FileMappingSize se establece en el tamaño de memoria compartida de la categoría. El tamaño predeterminado es 131072 decimal. Si el valor FileMappingSize no está presente, se usa el valor de fileMappingSize atributo del elemento especificado en el archivo Machine.config, lo que provoca una sobrecarga adicional para el performanceCounters procesamiento de archivos de configuración. Puede realizar una mejora del rendimiento para el inicio de la aplicación estableciendo el tamaño de asignación de archivos en el Registro.
Note
Se recomienda encarecidamente crear nuevas categorías de contadores de rendimiento durante la instalación de la aplicación, no durante la ejecución de la aplicación. Esto permite que el sistema operativo actualice su lista de categorías de contadores de rendimiento registrados. Si no se ha actualizado la lista, se producirá un error al intentar usar la categoría.
Note
Para leer los contadores de rendimiento de una sesión de inicio de sesión no interactiva en Windows Vista y versiones posteriores, Windows XP Professional x64 Edition o Windows Server 2003, debe ser miembro del grupo Usuarios del Monitor de rendimiento o tener privilegios administrativos.
Para evitar tener que elevar sus privilegios para acceder a los contadores de rendimiento en Windows Vista y versiones posteriores, agréguese al grupo Usuarios del Monitor de rendimiento.
En Windows Vista y versiones posteriores, el Control de cuentas de usuario (UAC) determina los privilegios de un usuario. Si es miembro del grupo Administradores integrados, se le asignan dos tokens de acceso en tiempo de ejecución: un token de acceso de usuario estándar y un token de acceso de administrador. De forma predeterminada, está en el rol de usuario estándar. Para ejecutar el código que accede a los contadores de rendimiento, primero debe elevar sus privilegios de usuario estándar a administrador. Puede hacerlo al iniciar una aplicación haciendo clic con el botón derecho en el icono de la aplicación e indicando que desea ejecutar como administrador.