En el menú Supervisión de Azure Portal, seleccione las reglas de recopilación de datos y, a continuación, seleccione Crear.
Para crear una DCR para recopilar datos de métricas de plataforma, seleccione el vínculo en la parte superior de la página.
En la página Crear regla de recopilación de datos, escriba un nombre de regla, seleccione una suscripción, un grupo de recursos y una región para la DCR.
Seleccione Habilitar identidad administrada si desea enviar métricas a una cuenta de almacenamiento o a Event Hubs.
Seleccione Siguiente.
En la página Recursos, seleccione Agregar recursos para agregar los recursos de los que desea recopilar métricas.
Seleccione Siguiente para ir a la pestaña Recopilar y entregar.
Seleccione Agregar nuevo flujo de datos
El tipo de recurso del recurso que eligió en el paso anterior se selecciona automáticamente. Agregue más tipos de recursos si desea usar esta regla para recopilar métricas de varios tipos de recursos en el futuro.
Seleccione Siguientes destinos para ir a la pestaña Destinos.
Para enviar métricas a un área de trabajo de Log Analytics, seleccione Registros de Azure Monitor en la lista desplegable Tipo de destino.
- Seleccione la suscripción y el área de trabajo de Log Analytics a la que desea enviar las métricas.
Para enviar métricas a Event Hubs, seleccione Event Hub en la lista desplegable Tipo de destino.
- Seleccione la suscripción, el espacio de nombres del centro de eventos y el nombre de la instancia del centro de eventos.
Para enviar métricas a una cuenta de almacenamiento, seleccione Cuenta de almacenamiento en la lista desplegable Tipo de destino.
- Seleccione la suscripción, la cuenta de almacenamiento y el contenedor de blobs donde desea almacenar las métricas.
Nota:
Para enviar métricas a una cuenta de almacenamiento o Event Hubs, el recurso que genera las métricas, la DCR y la cuenta de almacenamiento o el centro de eventos deben estar todos en la misma región.
Para enviar métricas a un área de trabajo de Log Analytics, la DCR debe estar en la misma región que el área de trabajo de Log Analytics. El recurso que genera las métricas puede estar en cualquier región.
Para seleccionar Cuenta de almacenamiento o Event Hubs como destino, debe habilitar la identidad administrada para la DCR en la pestaña Datos básicos.
Seleccione Guardar y, a continuación, seleccione Revisar y crear.
Cree un archivo JSON que contenga la especificación de la regla de recopilación. Para obtener más información, consulte Especificaciones de DCR. Para obtener archivos JSON de ejemplo, consulte Ejemplos de métricas de exportación de objetos JSON.
Importante
El archivo de reglas tiene el mismo formato que se usa para PowerShell y la API de REST, pero el archivo no debe contener identity
, la location
o kind
. Estos parámetros se especifican en el comando az monitor data-collection rule create
.
Use el comando siguiente para crear una regla de recopilación de datos para métricas mediante la CLI de Azure.
az monitor data-collection rule create
--name
--resource-group
--location
--kind PlatformTelemetry
--rule-file
[--identity "{type:'SystemAssigned'}" ]
En el caso de las cuentas de almacenamiento y los destinos de Event Hubs, debe habilitar la identidad administrada para la DCR mediante --identity "{type:'SystemAssigned'}"
. La identidad no es necesaria para las áreas de trabajo de Log Analytics.
Por ejemplo,
az monitor data-collection rule create
--name cli-dcr-001
--resource-group rg-001
--location centralus
--kind PlatformTelemetry
--identity "{type:'SystemAssigned'}"
--rule-file cli-dcr.json
Copie el id
y el principalId
de la DCR que se van a usar para asignar el rol para crear una asociación entre la DCR y un recurso.
"id": "/subscriptions/bbbb1b1b-cc2c-dd3d-ee4e-ffffff5f5f5f/resourceGroups/rg-001/providers/Microsoft.Insights/dataCollectionRules/cli-dcr-001",
"identity": {
"principalId": "eeeeeeee-ffff-aaaa-5555-666666666666",
"tenantId": "aaaabbbb-0000-cccc-1111-dddd2222eeee",
"type": "systemAssigned"
},
Conceder permisos de escritura a la entidad administrada
La identidad administrada usada por la DCR debe tener permisos de escritura en el destino cuando el destino es una cuenta de almacenamiento o Event Hubs.
Para conceder permisos para la entidad administrada de la regla, asigne el rol adecuado a la entidad.
En la tabla siguiente se muestran los roles necesarios para cada tipo de destino:
Tipo de destino |
Role |
Área de trabajo de Log Analytics |
no se requiere |
Cuenta de Azure Storage |
Storage Blob Data Contributor |
Event Hubs |
Azure Event Hubs Data Sender |
Para obtener más información sobre cómo asignar roles, consulte Asignar roles de Azure a una identidad administrada.
Para asignar un rol a una identidad administrada mediante la CLI, use az role assignment create
. Para obtener más información, consulte Asignaciones de roles: crear
Asigne el rol adecuado a la identidad administrada de la DCR.
az role assignment create --assignee <system assigned principal ID> \
--role <`Storage Blob Data Contributor` or `Azure Event Hubs Data Sender` \
--scope <storage account ID or eventhub ID>
En el ejemplo siguiente se asigna el rol Storage Blob Data Contributor
a la identidad administrada de la DCR para una cuenta de almacenamiento.
az role assignment create --assignee eeeeeeee-ffff-aaaa-5555-666666666666 \
--role "Storage Blob Data Contributor" \
--scope /subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f/resourceGroups/ed-rg-DCRTest/providers/Microsoft.Storage/storageAccounts/metricsexport001
Crear una asociación de reglas de recopilación de datos
Después de crear la regla de recopilación de datos, cree una asociación de reglas de recopilación de datos (DCRA) para asociar la regla al recurso que se va a supervisar. Para obtener más información, consulte Asociaciones de reglas de recopilación de datos: crear
Use az monitor data-collection rule association create
para crear una asociación entre una regla de recopilación de datos y un recurso.
az monitor data-collection rule association create --name
--rule-id
--resource
En el ejemplo siguiente se crea una asociación entre una regla de recopilación de datos y una instancia de Key Vault.
az monitor data-collection rule association create --name "keyValut-001" \
--rule-id "/subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f/resourceGroups/rg-dcr/providers/Microsoft.Insights/dataCollectionRules/dcr-cli-001" \
--resource "/subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f/resourceGroups/rg-dcr/providers/Microsoft.KeyVault/vaults/keyVault-001"
Cree un archivo JSON que contenga la especificación de la regla de recopilación. Para obtener más información, consulte Especificaciones de DCR. Para obtener archivos JSON de ejemplo, consulte Ejemplos de métricas de exportación de objetos JSON.
Use el comando New-AzDataCollectionRule
para crear una regla de recopilación de datos para métricas mediante PowerShell. Para obtener más información, vea New-AzDataCollectionRule.
New-AzDataCollectionRule -Name
-ResourceGroupName
-JsonFilePath
Por ejemplo,
New-AzDataCollectionRule -Name dcr-powershell-hub -ResourceGroupName rg-001 -JsonFilePath dcr-storage-account.json
Copie el id
y el IdentityPrincipalId
de la DCR que se van a usar para asignar el rol para crear una asociación entre la DCR y un resource.resource.
Id : /subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f/resourceGroups/rg-001/providers/Microsoft.Insights/dataCollectionRules/dcr-powershell-hub
IdentityPrincipalId : eeeeeeee-ffff-aaaa-5555-666666666666
IdentityTenantId : 0000aaaa-11bb-cccc-dd22-eeeeee333333
IdentityType : systemAssigned
IdentityUserAssignedIdentity : {
}
Conceder permisos de escritura a la entidad administrada
La identidad administrada usada por la DCR debe tener permisos de escritura en el destino cuando el destino es una cuenta de almacenamiento o Event Hubs.
Para conceder permisos para la entidad administrada de la regla, asigne el rol adecuado a la entidad.
En la tabla siguiente se muestran los roles necesarios para cada tipo de destino:
Tipo de destino |
Role |
Área de trabajo de Log Analytics |
no se requiere |
Cuenta de Azure Storage |
Storage Blob Data Contributor |
Event Hubs |
Azure Event Hubs Data Sender |
Para obtener más información, consulte Asignar roles de Azure a una identidad administrada.
Para asignar un rol a una identidad administrada mediante PowerShell, consulte New-AzRoleAssignment
Asigne el rol adecuado a la identidad administrada de la DCR mediante New-AzRoleAssignment
.
New-AzRoleAssignment -ObjectId <objectId> -RoleDefinitionName <roleName> -Scope /subscriptions/<subscriptionId>/resourcegroups/<resourceGroupName>/providers/<providerName>/<resourceType>/<resourceSubType>/<resourceName>
En el ejemplo siguiente se asigna el rol Azure Event Hubs Data Sender
a la identidad administrada de la DCR en el nivel de suscripción.
New-AzRoleAssignment -ObjectId eeeeeeee-ffff-aaaa-5555-666666666666 -RoleDefinitionName "Azure Event Hubs Data Sender" -Scope /subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f
Crear una asociación de reglas de recopilación de datos
Después de crear la regla de recopilación de datos, cree una asociación de reglas de recopilación de datos (DCRA) para asociar la regla al recurso que se va a supervisar. Use New-AzDataCollectionRuleAssociation
para crear una asociación entre una regla de recopilación de datos y un recurso. Para obtener más información, vea New-AzDataCollectionRuleAssociation
New-AzDataCollectionRuleAssociation
-AssociationName <String>
-ResourceUri <String>
-DataCollectionRuleId <String>
En el ejemplo siguiente se crea una asociación entre una regla de recopilación de datos y una instancia de Key Vault.
New-AzDataCollectionRuleAssociation
-AssociationName keyVault-001-association
-ResourceUri /subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f/resourceGroups/rg-dcr/providers/Microsoft.KeyVault/vaults/keyVault-001
-DataCollectionRuleId /subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f/resourceGroups/rg-dcr/providers/Microsoft.Insights/dataCollectionRules/vaultsDCR001
Crear una regla de recopilación de datos mediante la API de REST
La creación de una regla de recopilación de datos para métricas requiere los pasos siguientes:
- Crear la regla de recopilación de datos.
- Conceder permisos para que la entidad administrada de la regla escriba en el destino
- Crear una asociación de reglas de recopilación de datos.
Creación de la regla de recopilación de datos
Para crear una DCR mediante la API de REST, debe realizar una solicitud autenticada mediante un token de portador. Para obtener más información sobre la autenticación con Azure Monitor, consulte Autenticación de solicitudes de Azure Monitor.
Use el siguiente punto de conexión para crear una regla de recopilación de datos para métricas mediante la API de REST.
Para obtener más información, vea Reglas de recopilación de datos: crear.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dataCollectionRuleName}?api-version=2023-03-11
Por ejemplo
https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.Insights/dataCollectionRules/dcr-001?api-version=2023-03-11
La carga es un objeto JSON que define una regla de colección. La carga se envía en el cuerpo de la solicitud. Para obtener más información sobre la estructura JSON, consulte Especificaciones de DCR. Para ver objetos JSON de DCR de ejemplo, consulte Ejemplo de métricas de exportación de objetos JSON
Conceder permisos de escritura a la entidad administrada
La identidad administrada usada por la DCR debe tener permisos de escritura en el destino cuando el destino es una cuenta de almacenamiento o Event Hubs.
Para conceder permisos para la entidad administrada de la regla, asigne el rol adecuado a la entidad.
En la tabla siguiente se muestran los roles necesarios para cada tipo de destino:
Tipo de destino |
Role |
Área de trabajo de Log Analytics |
no se requiere |
Cuenta de Azure Storage |
Storage Blob Data Contributor |
Event Hubs |
Azure Event Hubs Data Sender |
Para obtener más información, consulte Asignar roles de Azure a una identidad administrada.
Para asignar un rol a una identidad administrada mediante REST, consulte Asignaciones de roles: crear
Crear una asociación de reglas de recopilación de datos
Después de crear la regla de recopilación de datos, cree una asociación de reglas de recopilación de datos (DCRA) para asociar la regla al recurso que se va a supervisar. Para obtener más información, consulte Asociaciones de reglas de recopilación de datos: crear
Para crear un DCRA mediante la API de REST, use el siguiente punto de conexión y carga:
PUT https://management.azure.com/{resourceUri}/providers/Microsoft.Insights/dataCollectionRuleAssociations/{associationName}?api-version=2022-06-0
Cuerpo:
{
"properties":
{
"description": "<DCRA description>",
"dataCollectionRuleId": "/subscriptions/{subscriptionId}/resourceGroups/{resource group name}/providers/Microsoft.Insights/dataCollectionRules/{DCR name}"
}
}
Por ejemplo,
https://management.azure.com//subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourcegroups/rg-001/providers/Microsoft.Compute/virtualMachines/vm002/providers/Microsoft.Insights/dataCollectionRuleAssociations/dcr-la-ws-vm002?api-version=2023-03-11
{
"properties":
{
"description": "Association of platform telemetry DCR with VM vm002",
"dataCollectionRuleId": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.Insights/dataCollectionRules/dcr-la-ws"
}
}
Use la plantilla siguiente para crear una DCR. Para obtener más información, consulte Microsoft.Insights dataCollectionRules
Archivo de plantilla
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"dataCollectionRuleName": {
"type": "string",
"metadata": {
"description": "Specifies the name of the Data Collection Rule to create."
}
},
"location": {
"type": "string",
"metadata": {
"description": "Specifies the location in which to create the Data Collection Rule."
}
}
},
"resources": [
{
"type": "Microsoft.Insights/dataCollectionRules",
"name": "[parameters('dataCollectionRuleName')]",
"kind": "PlatformTelemetry",
"identity": {
"type": "userassigned" | "systemAssigned",
"userAssignedIdentities": {
"type": "string"
}
},
"location": "[parameters('location')]",
"apiVersion": "2023-03-11",
"properties": {
"dataSources": {
"platformTelemetry": [
{
"streams": [
"<resourcetype>:<metric name> | Metrics-Group-All"
],
"name": "myPlatformTelemetryDataSource"
}
]
},
"destinations": {
"logAnalytics": [
{
"workspaceResourceId": "[parameters('workspaceId')]",
"name": "myDestination"
}
]
},
"dataFlows": [
{
"streams": [
"<resourcetype>:<metric name> | Metrics-Group-All"
],
"destinations": [
"myDestination"
]
}
]
}
}
]
}
Archivo de parámetros
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"dataCollectionRuleName": {
"value": "metrics-dcr-001"
},
"workspaceId": {
"value": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/azuremonitorworkspaceinsights/providers/microsoft.operationalinsights/workspaces/amw-insight-ws"
},
"location": {
"value": "eastus"
}
}
}
Plantilla de DCR de ejemplo:
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"resources": [
{
"type": "Microsoft.Insights/dataCollectionRules",
"apiVersion": "2023-03-11",
"name": "[parameters('dataCollectionRuleName')]",
"location": "[parameters('location')]",
"kind": "PlatformTelemetry",
"identity": {
"type": "SystemAssigned"
},
"properties": {
"dataSources": {
"platformTelemetry": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Metrics-Group-All",
"Microsoft.Compute/virtualMachineScaleSets:Metrics-Group-All",
"Microsoft.Cache/redis:Metrics-Group-All",
"Microsoft.keyvault/vaults:Metrics-Group-All"
],
"name": "myPlatformTelemetryDataSource"
}
]
},
"destinations": {
"logAnalytics": [
{
"workspaceResourceId": "[parameters('workspaceId')]",
"name": "myDestination"
}
]
},
"dataFlows": [
{
"streams": [
"Microsoft.Compute/virtualMachines:Metrics-Group-All",
"Microsoft.Compute/virtualMachineScaleSets:Metrics-Group-All",
"Microsoft.Cache/redis:Metrics-Group-All",
"Microsoft.keyvault/vaults:Metrics-Group-All"
],
"destinations": [
"myDestination"
]
}
]
}
}
]
}
Después de crear la DCR y la DCRA, espere hasta 30 minutos para que los primeros datos de métricas de la plataforma aparezcan en el área de trabajo de Log Analytics. Una vez que los datos comienzan a fluir, la latencia de una serie temporal de métricas de plataforma que fluye a un área de trabajo de Log Analytics, una cuenta de almacenamiento o Event Hubs es de aproximadamente 3 minutos, dependiendo del tipo de recurso.
Una vez que instale el DCR, los cambios pueden tardar varios minutos en entrar en vigor y los datos que se recopilarán con el DCR actualizado. Si no ve ningún dato que se recopila, puede ser difícil determinar la causa principal del problema. Use las características de supervisión de DCR, que incluyen métricas y registros para ayudar a solucionar problemas.
Si no ve los datos que se recopilan, siga estos pasos básicos para solucionar el problema.