Exportación de métricas mediante reglas de recopilación de datos (versión preliminar)
Las reglas de recopilación de datos (DCR) se usan para recopilar datos de supervisión de los recursos de Azure. Para obtener una lista del escenario de recopilación de datos, consulte Reglas de recopilación de datos: Información general. Ahora puede usar DCR para recopilar y exportar métricas de plataforma.
Actualmente, se pueden recopilar métricas de plataforma mediante DCR y Configuración de diagnóstico. Un número creciente de recursos admiten la exportación de métricas mediante DCR. Consulte Recursos y regiones admitidos para obtener una lista de los recursos auxiliares.
El uso de DCR para exportar métricas proporciona las siguientes ventajas sobre la configuración de diagnóstico:
- La configuración de DCR permite exportar métricas con dimensiones.
- La configuración de DCR habilita el filtrado basado en el nombre de la métrica, de modo que solo pueda exportar las métricas que necesita.
- Las DCR son más flexibles y escalables en comparación con la configuración de diagnóstico.
- La latencia de un extremo a otro para los DCR es de 3 minutos. Se trata de una mejora importante de la configuración de diagnóstico en la que la latencia de exportación de métricas es de 6 a 10 minutos.
Use la exportación de métricas a través de DCR para la exportación continua de datos de métricas. Para consultar datos históricos, use la API de Batch de métricas del plano de datos. Para obtener una comparación de los dos servicios, consulte Consulta de la API de Batch de métricas del plano de datos frente a la exportación de métricas.
Cree DCR para métricas mediante la API REST, la CLI de Azure o Azure PowerShell. Para obtener información sobre cómo crear DCR para la exportación de métricas, consulte Creación de reglas de recopilación de datos para métricas.
Al crear un DCR, debe crear una asociación de reglas de recopilación de datos (DCRA) para asociar el DCR con el recurso que se va a supervisar. Puede crear un DCR único para muchos tipos de recursos. Para obtener información sobre cómo crear una DCRA, consulte Creación de asociaciones de reglas de recolección de datos. Si se realiza a través del Azure Portal, el nuevo DCRA se crea automáticamente.
Nota:
Es posible usar DCR y la configuración de diagnóstico al mismo tiempo. Se recomienda deshabilitar la configuración de diagnóstico para las métricas al usar DCR para evitar la recopilación de datos duplicada.
Destinos de la exportación
Las métricas se pueden exportar a uno de los siguientes destinos por DCR:
Áreas de trabajo de Log Analytics.
La exportación a áreas de trabajo de Log Analytics se puede realizar entre regiones. El área de trabajo de Log Analytics y el DCR deben estar en la misma región, pero los recursos que se supervisan pueden estar en cualquier región. Las métricas enviadas a un área de trabajo de Log Analytics se almacenan en la tablaAzureMetricsV2
.Cuentas de Azure Storage.
La cuenta de almacenamiento, el DCR y los recursos que se supervisan deben estar todos en la misma región.Event Hubs.
Event Hubs, el DCR y los recursos que se supervisan deben estar en la misma región.
Para obtener un ejemplo de los datos de cada destino, consulte Datos exportados.
Nota:
La latencia para exportar métricas es de aproximadamente 3 minutos. Permita hasta 15 minutos para que las métricas empiecen a aparecer en el destino después de la configuración inicial.
Limitaciones
Los DCR para la exportación de métricas tienen las siguientes limitaciones:
- Solo se puede especificar un destino por DCR.
- Se puede asociar un máximo de 5 DCR a un único recurso de Azure.
- La exportación de métricas por DCR no admite la exportación de métricas específicas por hora.
Recursos y regiones admitidos
Los siguientes recursos admiten la exportación de métricas mediante reglas de recopilación de datos:
Tipo de recurso | Especificación de flujos |
---|---|
Conjuntos de escalado de máquina virtual | Microsoft.compute/virtualmachinescalesets |
Máquinas virtuales | Microsoft.compute/virtualmachines |
Redis Cache | Microsoft.cache/redis |
Centros de IoT | Microsoft.devices/iothubs |
Almacenes de claves | Microsoft.keyvault/vaults |
Cuentas de almacenamiento | Microsoft.storage/storageaccounts Microsoft.storage/Storageaccounts/blobservices Microsoft.storage/storageaccounts/fileservices Microsoft.storage/storageaccounts/queueservices Microsoft.storage/storageaccounts/tableservices |
SQL Server | Microsoft.sql/servers Microsoft.sql/servers/databases |
Operational Insights | Microsoft.operationalinsights/workspaces |
Media services | Microsoft.media/mediaservices Microsoft.media/mediaservices/streamingendpoints Microsoft.media/mediaservices/liveevents |
Protección de los datos | Microsoft.dataprotection/backupvaults |
Azure Kubernetes Service | Microsoft.ContainerService/managedClusters |
Regiones admitidas
Puede crear un DCR para la exportación de métricas en cualquier región, pero los recursos desde los que desea exportar las métricas deben estar en una de las siguientes regiones:
- Este de Australia
- Centro de EE. UU.
- CentralUsEuap
- Centro-sur de EE. UU.
- Este de EE. UU.
- Este de EE. UU. 2
- Eastus2Euap
- Oeste de EE. UU.
- Oeste de EE. UU. 2
- Norte de Europa
- Oeste de Europa
- Sur de Reino Unido 2
Especificaciones de DCR
Las reglas de recopilación de datos se definen en un objeto JSON. Las siguientes propiedades son necesarias para crear un DCR para la exportación de métricas.
Propiedad | Descripción |
---|---|
dataSources.platformTelemetry.streams |
Enumera los tipos de recursos y las métricas. Especifique Metrics-Group-All para recopilar todas las métricas del recurso o especificar métricas individuales. Formato: <resource type>:Metrics-Group-All | <metric name> Por ejemplo: Microsoft.Compute/virtualMachines:Percentage CPU |
dataSources.platformTelemetry.name |
El nombre del origen de datos. |
destinations |
Destino de las métricas. Solo se admite un destino por DCR. Tipos de destinos válidos: storageAccounts logAnalytics eventHubs |
dataflows.streams |
Lista de secuencias que se van a pasar al destino en el formato: <resource type>:Metrics-Group-All |<metric name> Por ejemplo, Microsoft.Compute/virtualMachines:Percentage CPU" |
dataflows.destinations |
El destino al que se deben pasar los flujos según lo definido en la propiedad destinations . |
identity.type |
Tipo de identidad que se usará para el DCR. Necesario para los destinos de la cuenta de almacenamiento. Los valores válidos son: systemAssigned userAssigned |
kind |
Tipo de regla de recopilación de datos. Establezca esta opción en PlatformTelemetry para la exportación de métricas. |
location |
La ubicación del DCR. |
Nota:
Solo se puede especificar un destino por DCR.
Formato JSON para la exportación de DCR de métricas
Use el siguiente formato en el objeto JSON genérico para crear un DCR para la exportación de métricas. Quite los destinos no deseados al copiar el ejemplo.
{
"properties": {
"dataSources": {
"platformTelemetry": [
{
"streams": [
// a list of resource types and metrics to collect metrics from
"<resourcetype>:<metric name> | Metrics-Group-All",
"<resourcetype>:<metric name> | Metrics-Group-All"
],
"name": "<data sources name>"
}
]
},
"destinations": {
// Choose a single destination type of either logAnalytics, storageAccounts, or eventHubs
"logAnalytics": [
{
"workspaceResourceId": "workspace Id",
"name": "<destination name>"
}
],
"storageAccounts": [
{
"storageAccountResourceId": "<storage account Id>",
"containerName": "<container name>",
"name": "<destination name>"
}
],
"eventHubs": [
{
"eventHubResourceId": "event hub id",
"name": "<destination name>"
}
], },
"dataFlows": [
{
"streams": [
// a list of resource types and metrics to pass to the destination
"<resourcetype>:<metric name> | Metrics-Group-All",
"<resourcetype>:<metric name> | Metrics-Group-All"
],
"destinations": [
"<destination name>"
]
}
]
},
// identity is required for Storage Account and Event Hubs destinations
"identity": {
"type": "userassigned",
"userAssignedIdentities": {
"/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.ManagedIdentity/userAssignedIdentities/DRCIdentity": {}
}
},
"kind": "PlatformTelemetry",
"location": "eastus"
}
Nota:
Al crear un DCR para la exportación de métricas mediante la CLI, kind
, location
y identity
se pasan como argumentos y se deben quitar del objeto JSON.
Identidades asignadas por el usuario y el sistema
Las identidades asignadas por el usuario y el sistema se admiten al crear DCR. Se requiere una identidad para los destinos de Cuenta de almacenamiento e Event Hubs. Puede usar una identidad asignada por el sistema o por el usuario. Para obtener más información, consulte Asignar roles de Azure a una identidad administrada.
Para usar una identidad asignada por el sistema, agregue el objeto identity
de la siguiente manera:
"identity": {
"type": "systemAssigned"
},
Para usar una identidad asignada por el usuario, agregue el objeto identity
de la siguiente manera:
"identity": {
"type": "userassigned",
"userAssignedIdentities": {
"/subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity name>": {}
}
}
Métricas de filtrado
Al especificar las métricas que se van a exportar, puede filtrar las métricas por nombre o solicitar todas las métricas mediante Metrics-Group-All
. Para obtener una lista de las métricas admitidas, consulte Métricas admitidas y categorías de registro por tipo de recurso.
Para especificar más de una métrica del mismo tipo de recurso, cree un elemento de secuencia independiente para cada métrica.
En el ejemplo siguiente se muestra cómo filtrar las métricas por nombre.
{
"properties": {
"dataSources": {
"platformTelemetry": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Percentage CPU",
"Microsoft.Compute/virtualMachines:Disk Read Bytes",
"Microsoft.Compute/virtualMachines:Inbound Flows",
"Microsoft.Compute/virtualMachineScaleSets:Percentage CPU",
"Microsoft.Cache/redis:Cache Hits"
],
"name": "myPlatformTelemetryDataSource"
}
]
},
"destinations": {
"logAnalytics": [
{
"workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/arg-001/providers/microsoft.operationalinsights/workspaces/loganalyticsworkspace001",
"name": "destinationName"
}
]
},
"dataFlows": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Percentage CPU",
"Microsoft.Compute/virtualMachines:Disk Read Bytes",
"Microsoft.Compute/virtualMachines:Inbound Flows",
"Microsoft.Compute/virtualMachineScaleSets:Percentage CPU",
"Microsoft.Cache/redis:Cache Hits"
],
"destinations": [
"destinationName"
]
}
]
},
"kind": "PlatformTelemetry",
"location": "eastus"
}
Objetos JSON de exportación de métricas de muestra
En los ejemplos siguientes se muestran objetos JSON de DCR de ejemplo para la exportación de métricas a cada tipo de destino.
Áreas de trabajo de Log Analytics
En el ejemplo siguiente se muestra una regla de recopilación de datos para métricas que envían métricas específicas de máquinas virtuales, conjuntos de escalado de máquinas virtuales y todas las métricas del almacén de claves a un área de trabajo de Log Analytics:
{
"properties": {
"dataSources": {
"platformTelemetry": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Percentage CPU",
"Microsoft.Compute/virtualMachines:Disk Read Bytes",
"Microsoft.Compute/virtualMachines:Inbound Flows",
"Microsoft.Compute/virtualMachineScaleSets:Available Memory Bytes",
"Microsoft.KeyVault/vaults:Metrics-Group-All"
],
"name": "myPlatformTelemetryDataSource"
}
]
},
"destinations": {
"logAnalytics": [
{
"workspaceResourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-001/providers/microsoft.operationalinsights/workspaces/laworkspace001",
"name": "ladestination"
}
]
},
"dataFlows": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Percentage CPU",
"Microsoft.Compute/virtualMachines:Disk Read Bytes",
"Microsoft.Compute/virtualMachines:Inbound Flows",
"Microsoft.Compute/virtualMachineScaleSets:Available Memory Bytes",
"Microsoft.KeyVault/vaults:Metrics-Group-All"
],
"destinations": [
"ladestination"
]
}
]
},
"kind": "PlatformTelemetry",
"location": "centralus"
}
Creación de DCR para la exportación de métricas
Cree DCR para la exportación de métricas mediante Azure Portal, la CLI, PowerShell, la API REST o la plantilla de ARM. Para obtener más información, consulte Crear una regla de recopilación de datos (DCR) para la exportación de métricas.
Datos exportados
En los ejemplos siguientes se muestran los datos exportados a cada destino.
Áreas de trabajo de Log Analytics
Los datos exportados a un área de trabajo de Log Analytics se almacenan en la tabla AzureMetricsV2
en el área de trabajo de Log Analytics con el formato siguiente:
Columna | Type | Descripción |
---|---|---|
Media | real | Valor medio recopilado durante el intervalo de tiempo. |
_BilledSize | real | Tamaño del registro en bytes |
Count | real | Número de muestras recopiladas durante el intervalo de tiempo. |
Dimensión | dinámico | Dimensión asociada de la métrica en formato JSON. |
_IsBillable | string | Especifica si la ingesta de los datos es facturable. Cuando _IsBillable sea una ingesta false no se facturará a su cuenta de Azure |
Máxima | real | Valor máximo recopilado durante en el intervalo de tiempo. |
MetricCategory | string | Nombre de la categoría de la métrica. |
MetricName | string | Nombre para mostrar de la métrica. |
MetricResourceType | string | Tipo de recurso del recurso de Azure que informa de la métrica. |
Mínima | real | Valor mínimo recopilado durante en el intervalo de tiempo. |
_ResourceId | string | Identificador único del recurso al que está asociado el registro. |
SourceSystem | string | Tipo de agente mediante el que se recopiló el evento. Por ejemplo, OpsManager para el agente de Windows, ya sea conexión directa u Operations Manager, Linux para todos los agentes de Linux o Azure para Azure Diagnostics |
_SubscriptionId | string | Identificador único de la suscripción a la que está asociado el registro. |
TenantId | string | Id. del área de trabajo de Log Analytics |
TimeGenerated | datetime | Marca de tiempo (UTC) de cuando se generó el registro. |
TimeGrain | string | Intervalo de agregación de la métrica. |
Total | real | Suma de todos los valores del intervalo de tiempo. |
Tipo | string | Nombre de la tabla. |
UnitName | string | Unidad de la métrica. |
Por ejemplo:
Cuentas de almacenamiento
En el ejemplo siguiente se muestran los datos exportados a una cuenta de almacenamiento:
{
"Average": "31.5",
"Count": "2",
"Maximum": "52",
"Minimum": "11",
"Total": "63",
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-dcrs/providers/microsoft.keyvault/vaults/dcr-vault",
"time": "2024-08-20T14:13:00.0000000Z",
"unit": "MilliSeconds",
"metricName": "ServiceApiLatency",
"timeGrain": "PT1M",
"dimension": {
"ActivityName": "vaultget",
"ActivityType": "vault",
"StatusCode": "200",
"StatusCodeClass": "2xx"
}
}
Event Hubs
En el ejemplo siguiente se muestra una métrica exportada a Event Hubs.
{
"Average": "1",
"Count": "1",
"Maximum": "1",
"Minimum": "1",
"Total": "1",
"resourceId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-dcrs/providers/microsoft.keyvault/vaults/dcr-vault",
"time": "2024-08-22T13:43:00.0000000Z",
"unit": "Count",
"metricName": "ServiceApiHit",
"timeGrain": "PT1M",
"dimension": {
"ActivityName": "keycreate",
"ActivityType": "key"
},
"EventProcessedUtcTime": "2024-08-22T13:49:17.1233030Z",
"PartitionId": 0,
"EventEnqueuedUtcTime": "2024-08-22T13:46:04.5570000Z"
}
Pasos siguientes
- Creación y edición de reglas de recopilación de datos
- Consulta de la API de Batch de métricas del plano de datos frente a la exportación de métricas
- Información general de reglas de recopilación de datos
- Procedimientos recomendados para la creación y administración de reglas de recopilación de datos en Azure Monitor