Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La extensión de diagnóstico de Azure es un agente en Azure Monitor que recopila datos de supervisión del sistema operativo invitado y las cargas de trabajo de máquinas virtuales de Azure y otros recursos de cómputo. En este artículo se describe cómo enviar datos desde la extensión de diagnóstico de Microsoft Azure (WAD) a Azure Event Hubs para que pueda reenviar a ubicaciones fuera de Azure.
Importante
La extensión de Azure Diagnostics se consideró obsoleta el 31 de marzo de 2026 y ya no se admite. No se recomiendan nuevas implementaciones de la extensión. Para garantizar el soporte y el acceso continuos a las nuevas características, migre a las soluciones alternativas recomendadas aquí.
Datos admitidos
Los datos recopilados del sistema operativo invitado que pueden enviarse a Event Hubs son los siguientes. Otros orígenes de datos recopilados por WAD, incluidos los registros de Internet Information Services (IIS) y los volcados de fallos, no se pueden enviar a Event Hubs.
- Seguimiento de eventos para Windows (ETW)
- Contadores de rendimiento
- Windows registros de eventos, incluidos los registros de aplicaciones en el registro de eventos de Windows
- registros de infraestructura de Azure Diagnostics
Requisitos previos
- Extensión de diagnósticos de Windows 1.6 o posterior. Consulte el historial de versiones en Historial y versiones de esquemas de configuración de Azure Diagnostics Extension y los recursos admitidos en la introducción a Azure Diagnostics Extension.
- Siempre debe aprovisionarse un espacio de nombres de Event Hubs. Consulte la introducción a Event Hubs para más información.
- El centro de eventos debe tener al menos el nivel Estándar. No se admite el nivel básico.
Esquema de configuración
Consulte Install and configure Microsoft Azure diagnostics extension (WAD) para ver las distintas opciones para habilitar y configurar la extensión de diagnóstico. Consulte Azure Diagnostics esquema de configuración para obtener una referencia del esquema de configuración. En el resto de este artículo se describe cómo usar esta configuración para enviar datos a un centro de eventos.
Azure Diagnostics siempre envía registros y métricas a una cuenta de Azure Storage. Puede configurar uno o varios receptores de datos que envían datos a otras ubicaciones. Cada receptor de datos se define en el elemento SinksConfig de la configuración pública con información confidencial en la configuración privada. Esta configuración de los centros de eventos utiliza los valores de la tabla siguiente.
| Propiedad | Descripción |
|---|---|
| Nombre | Nombre descriptivo del receptor. Se utiliza en la configuración para especificar qué orígenes de datos van a enviar información al receptor. |
| URL | Dirección URL del centro de eventos con el formato <event-hubs-namespace>.servicebus.windows.net/<event-hub-name>. |
| SharedAccessKeyName | Nombre de la directiva de acceso compartido del centro de eventos que tiene, como mínimo, el permiso Enviar. |
| ClaveDeAccesoCompartido | Clave principal o secundaria de la directiva de acceso compartido del centro de eventos. |
En el ejemplo siguiente se muestran configuraciones públicas y privadas. Se trata de una configuración mínima con un único contador de rendimiento y un registro de eventos para ilustrar cómo configurar y usar el receptor de datos del centro de eventos. Consulte Azure Diagnostics esquema de configuración para obtener un ejemplo más complejo.
Configuración pública
{
"WadCfg": {
"DiagnosticMonitorConfiguration": {
"overallQuotaInMB": 5120,
"PerformanceCounters": {
"scheduledTransferPeriod": "PT1M",
"sinks": "myEventHub",
"PerformanceCounterConfiguration": [
{
"counterSpecifier": "\\Processor(_Total)\\% Processor Time",
"sampleRate": "PT3M"
}
]
},
"WindowsEventLog": {
"scheduledTransferPeriod": "PT1M",
"sinks": "myEventHub",
"DataSource": [
{
"name": "Application!*[System[(Level=1 or Level=2 or Level=3)]]"
}
]
}
},
"SinksConfig": {
"Sink": [
{
"name": "myEventHub",
"EventHub": {
"Url": "https://diags-mycompany-ns.servicebus.windows.net/diageventhub",
"SharedAccessKeyName": "SendRule"
}
}
]
}
},
"StorageAccount": "mystorageaccount",
}
Configuración privada
{
"storageAccountName": "mystorageaccount",
"storageAccountKey": "{base64 encoded key}",
"storageAccountEndPoint": "https://core.windows.net",
"EventHub": {
"Url": "https://diags-mycompany-ns.servicebus.windows.net/diageventhub",
"SharedAccessKeyName": "SendRule",
"SharedAccessKey": "{base64 encoded key}"
}
}
Opciones de configuración
Para enviar datos a un receptor de datos, debe especificar el atributo sinks en el nodo del origen de datos. El lugar en el que incluya el atributo sinks determinará el ámbito de la asignación. En el ejemplo siguiente, el atributo sinks se define en el nodo PerformanceCounters . Esto hace que todos los contadores de rendimiento secundarios se envíen al centro de eventos.
"PerformanceCounters": {
"scheduledTransferPeriod": "PT1M",
"sinks": "MyEventHub",
"PerformanceCounterConfiguration": [
{
"counterSpecifier": "\\Processor(_Total)\\% Processor Time",
"sampleRate": "PT3M"
},
{
"counterSpecifier": "\\Memory\\Available MBytes",
"sampleRate": "PT3M"
},
{
"counterSpecifier": "\\Web Service(_Total)\\ISAPI Extension Requests/sec",
"sampleRate": "PT3M"
}
]
}
En el ejemplo siguiente, el atributo sinks se aplica directamente a tres contadores. Solo hace que esos contadores de rendimiento se envíen al centro de eventos.
"PerformanceCounters": {
"scheduledTransferPeriod": "PT1M",
"PerformanceCounterConfiguration": [
{
"counterSpecifier": "\\Processor(_Total)\\% Processor Time",
"sampleRate": "PT3M",
"sinks": "MyEventHub"
},
{
"counterSpecifier": "\\Memory\\Available MBytes",
"sampleRate": "PT3M"
},
{
"counterSpecifier": "\\Web Service(_Total)\\ISAPI Extension Requests/sec",
"sampleRate": "PT3M"
},
{
"counterSpecifier": "\\ASP.NET\\Requests Rejected",
"sampleRate": "PT3M",
"sinks": "MyEventHub"
},
{
"counterSpecifier": "\\ASP.NET\\Requests Queued",
"sampleRate": "PT3M",
"sinks": "MyEventHub"
}
]
}
Validación de la configuración
Puede usar varios métodos para validar que los datos se envían al centro de eventos. Un método sencillo consiste en usar la captura de eventos de Event Hubs como se describe en Capturar eventos a través de Azure Event Hubs en Azure Blob Storage o Azure Data Lake Storage.
Solución de problemas con los receptores de Event Hubs
Examine la tabla Azure Storage WADDiagnosticInfrastructureLogsTable que contiene registros y errores para Azure Diagnostics. Una opción es usar una herramienta como Explorador de Azure Storage para conectarse a esta cuenta de almacenamiento, ver esta tabla y agregar una consulta para TimeStamp en las últimas 24 horas. Puede usar la herramienta para exportar un archivo .csv y abrirlo en una aplicación como Microsoft Excel. Excel facilita la búsqueda de cadenas de tarjeta de llamadas, como EventHubs, para ver qué error se notifica.
Compruebe que el centro de eventos esté correctamente aprovisionado. Toda la información de conexión de la sección PrivateConfig de la configuración debe coincidir con los valores del recurso que se muestran en el portal. No olvide que debe tener una directiva SAS definida (en este ejemplo es SendRule) en el portal y que debe haberse concedido el permiso Enviar.