Dans le menu Surveiller du portail Azure, sélectionnez Règles de collecte des données, puis Créer.
Pour créer une DCR pour collecter des données de métriques de plateforme, sélectionnez le lien en haut de la page.
Dans la page Créer une règle de collecte des données, entrez un nom de règle, sélectionnez un abonnement, une groupe de ressources et une région pour la DCR.
Sélectionnez Activer l’identité managée si vous souhaitez envoyer des métriques à un compte de stockage ou à Event Hubs.
Sélectionnez Suivant.
Dans la page Ressources, sélectionnez Ajouter des ressources pour ajouter les ressources à partir desquelles vous souhaitez collecter des métriques.
Sélectionnez Suivant pour accéder à l’onglet Collecter et livrer.
Sélectionnez Ajouter un nouveau flux de données.
Le type de ressource de la ressource choisie à l’étape précédente est automatiquement sélectionné. Ajoutez d’autres types de ressources si vous souhaitez utiliser cette règle pour collecter des métriques à partir de plusieurs types de ressources à l’avenir.
Sélectionnez Destinations suivantes pour accéder à l’onglet Destinations.
Pour envoyer des métriques à un espace de travail Log Analytics, sélectionnez Journaux Azure Monitor dans le menu déroulant Type de destination.
- Sélectionnez l’abonnement et l’espace de travail Log Analytics dans lesquels vous souhaitez envoyer les métriques.
Pour envoyer des métriques à Event Hubs, sélectionnez Event Hub dans le menu déroulant Type de destination.
- Sélectionnez l’abonnement, l’espace de noms Event Hub et le nom de l’instance Event Hub.
Pour envoyer des métriques à un compte de stockage, sélectionnez Compte de stockage dans le menu déroulant Type de destination.
- Sélectionnez l’abonnement, le compte de stockage et le conteneur d’objets blob dans lesquels vous souhaitez stocker les métriques.
Remarque
Pour envoyer des métriques à un compte de stockage ou à Event Hubs, la ressource qui génère les métriques, la DCR et le compte de stockage ou Event Hub doivent tous se trouver dans la même région.
Pour envoyer des métriques à un espace de travail Log Analytics, la DCR doit se trouver dans la même région que l’espace de travail Log Analytics. La ressource générant les métriques peut se trouver dans n’importe quelle région.
Pour sélectionner le compte de stockage ou Event Hubs comme destination, vous devez activer l’identité managée pour la DCR sous l’onglet Informations de base.
Sélectionnez Enregistrer, puis Vérifier + créer.
Créez un fichier JSON contenant la spécification de la règle de collecte. Pour plus d’informations, consultez spécifications de la DCR. Pour obtenir des exemples de fichiers JSON, consultez Exemples de métriques Exporter des objets JSON.
Important
Le fichier de règle a le même format que celui utilisé pour PowerShell et l’API REST, mais le fichier ne doit pas contenir identity
, le location
ou kind
. Ces paramètres sont spécifiés dans la commande az monitor data-collection rule create
.
Utilisez la commande suivante pour créer une règle de collecte des données pour les métriques à l’aide de l’interface Azure CLI.
az monitor data-collection rule create
--name
--resource-group
--location
--kind PlatformTelemetry
--rule-file
[--identity "{type:'SystemAssigned'}" ]
Pour les destinations Compte de stockage et Event Hubs, vous devez activer l’identité managée pour la DCR à l’aide de --identity "{type:'SystemAssigned'}"
. L’identité n’est pas requise pour les espaces de travail Log Analytics.
Par exemple,
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
Copiez le id
et le principalId
de la DCR à utiliser pour attribuer le rôle pour créer une association entre la DCR et une ressource.
"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"
},
Accorder des autorisations d’écriture à l’entité managée
L’identité managée utilisée par la DCR doit disposer d’autorisations d’écriture sur la destination lorsque la destination est un Compte de stockage ou Event Hubs.
Pour accorder des autorisations pour l’entité managée de la règle, attribuez le rôle approprié à l’entité.
Le tableau suivant présente les rôles requis pour chaque type de destination :
Type de destination |
Rôle |
Espace de travail Log Analytics |
non exigé |
Compte de stockage Azure |
Storage Blob Data Contributor |
Event Hubs |
Azure Event Hubs Data Sender |
Pour plus d’informations sur l’attribution de rôles, consultez Affecter des rôles Azure à une identité managée.
Pour attribuer un rôle à une identité managée à l’aide de l’interface CLI, utilisez az role assignment create
. Pour plus d’informations, consultez Attributions de rôle – Créer.
Attribuez le rôle approprié à l’identité managée 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>
L’exemple suivant affecte le rôle Storage Blob Data Contributor
à l’identité managée de la DCR pour un compte de stockage.
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
Créer une association de règles de collecte des données
Après avoir créé la règle de collecte des données, créez une association de règles de collecte des données (DCRA) pour associer la règle à la ressource à surveiller. Pour plus d’informations, consultez Associations de règles de collecte des données – Créer
Utilisez az monitor data-collection rule association create
pour créer une association entre une règle de collecte des données et une ressource.
az monitor data-collection rule association create --name
--rule-id
--resource
L’exemple suivant crée une association entre une règle de collecte des données et un coffre de clés.
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"
Créez un fichier JSON contenant la spécification de la règle de collecte. Pour plus d’informations, consultez spécifications de la DCR. Pour obtenir des exemples de fichiers JSON, consultez Exemples de métriques Exporter des objets JSON.
Utilisez la commande New-AzDataCollectionRule
pour créer une règle de collecte des données pour les métriques à l’aide de PowerShell. Pour plus d’informations, consultez New-AzDataCollectionRule.
New-AzDataCollectionRule -Name
-ResourceGroupName
-JsonFilePath
Par exemple,
New-AzDataCollectionRule -Name dcr-powershell-hub -ResourceGroupName rg-001 -JsonFilePath dcr-storage-account.json
Copiez le id
et le IdentityPrincipalId
de la DCR à utiliser pour attribuer le rôle pour créer une association entre la DCR et une ressource.
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 : {
}
Accorder des autorisations d’écriture à l’entité managée
L’identité managée utilisée par la DCR doit disposer d’autorisations d’écriture sur la destination lorsque la destination est un Compte de stockage ou Event Hubs.
Pour accorder des autorisations pour l’entité managée de la règle, attribuez le rôle approprié à l’entité.
Le tableau suivant présente les rôles requis pour chaque type de destination :
Type de destination |
Rôle |
Espace de travail Log Analytics |
non exigé |
Compte de stockage Azure |
Storage Blob Data Contributor |
Event Hubs |
Azure Event Hubs Data Sender |
Pour plus d’informations, consultez Attribuer des rôles Azure à une identité managée.
Pour attribuer un rôle à une identité managée à l’aide de PowerShell, consultez New-AzRoleAssignment.
Attribuez le rôle approprié à l’identité managée de la DCR à l’aide de New-AzRoleAssignment
.
New-AzRoleAssignment -ObjectId <objectId> -RoleDefinitionName <roleName> -Scope /subscriptions/<subscriptionId>/resourcegroups/<resourceGroupName>/providers/<providerName>/<resourceType>/<resourceSubType>/<resourceName>
L’exemple suivant attribue le rôle Azure Event Hubs Data Sender
à l’identité managée de la DCR au niveau de l’abonnement.
New-AzRoleAssignment -ObjectId eeeeeeee-ffff-aaaa-5555-666666666666 -RoleDefinitionName "Azure Event Hubs Data Sender" -Scope /subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f
Créer une association de règles de collecte des données
Après avoir créé la règle de collecte des données, créez une association de règles de collecte des données (DCRA) pour associer la règle à la ressource à surveiller. Utilisez New-AzDataCollectionRuleAssociation
pour créer une association entre une règle de collecte des données et une ressource. Pour plus d’informations, consultez New-AzDataCollectionRuleAssociation.
New-AzDataCollectionRuleAssociation
-AssociationName <String>
-ResourceUri <String>
-DataCollectionRuleId <String>
L’exemple suivant crée une association entre une règle de collecte des données et un coffre de clés.
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
Créer une règle de collecte des données à l’aide de l’API REST
Pour créer une règle de collecte des données pour les métriques, procédez comme suit :
- Créez la règle de collecte des données.
- Accordez des autorisations pour l’entité managée de la règle pour écrire dans la destination.
- Créez une association de règles de collecte des données.
Créer la règle de collecte de données
Pour créer une DCR à l’aide de l’API REST, vous devez effectuer une demande authentifiée à l’aide d’un jeton du porteur. Pour plus d’informations sur l’authentification auprès d’Azure Monitor, consultez Authentifier les requêtes Azure Monitor.
Utilisez le point de terminaison suivant pour créer une règle de collecte des données pour les métriques à l’aide de l’API REST.
Pour plus d’informations, consultez Règles de collecte des données – Créer.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dataCollectionRuleName}?api-version=2023-03-11
Par exemple
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 charge utile est un objet JSON qui définit une règle de collecte. La charge utile est envoyée dans le corps de la requête. Pour plus d’informations sur la structure JSON, consultez Spécifications de la DCR. Pour obtenir des exemples d’objets JSON DCR, consultez Exemples de métriques Exporter des objets JSON.
Accorder des autorisations d’écriture à l’entité managée
L’identité managée utilisée par la DCR doit disposer d’autorisations d’écriture sur la destination lorsque la destination est un Compte de stockage ou Event Hubs.
Pour accorder des autorisations pour l’entité managée de la règle, attribuez le rôle approprié à l’entité.
Le tableau suivant présente les rôles requis pour chaque type de destination :
Type de destination |
Rôle |
Espace de travail Log Analytics |
non exigé |
Compte de stockage Azure |
Storage Blob Data Contributor |
Event Hubs |
Azure Event Hubs Data Sender |
Pour plus d’informations, consultez Attribuer des rôles Azure à une identité managée.
Pour attribuer un rôle à une identité managée à l’aide de REST, consultez Attributions de rôles – Créer
Créer une association de règles de collecte des données
Après avoir créé la règle de collecte des données, créez une association de règles de collecte des données (DCRA) pour associer la règle à la ressource à surveiller. Pour plus d’informations, consultez Associations de règles de collecte des données – Créer
Pour créer une DCRA à l’aide de l’API REST, utilisez le point de terminaison et la charge utile suivants :
PUT https://management.azure.com/{resourceUri}/providers/Microsoft.Insights/dataCollectionRuleAssociations/{associationName}?api-version=2022-06-0
Corps :
{
"properties":
{
"description": "<DCRA description>",
"dataCollectionRuleId": "/subscriptions/{subscriptionId}/resourceGroups/{resource group name}/providers/Microsoft.Insights/dataCollectionRules/{DCR name}"
}
}
Par exemple,
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"
}
}
Utilisez le modèle suivant pour créer une DCR. Pour plus d’informations, consultez Microsoft.Insights dataCollectionRules.
Fichier de modèle
{
"$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"
]
}
]
}
}
]
}
Fichier de paramètres
{
"$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"
}
}
}
Exemple de modèle de DCR :
{
"$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"
]
}
]
}
}
]
}
Après avoir créé la DCR et la DCRA, veuillez patienter jusqu’à 30 minutes pour que les données de métriques de la première plateforme apparaissent dans l’espace de travail Log Analytics. Une fois que les données commencent à circuler, la latence d’une série chronologique de métrique de plateforme qui transite vers un espace de travail Log Analytics, un compte de stockage ou Event Hubs est d’environ 3 minutes, selon le type de ressource.
Une fois le DCR installé, plusieurs minutes peuvent s'écouler avant que les modifications prennent effet et que les données soient collectées avec le DCR mis à jour. Si vous ne voyez aucune donnée collectée, il peut être difficile de déterminer la cause première du problème. Utilisez les fonctionnalités de surveillance DCR, qui incluent des mesures et des journaux pour vous aider à résoudre les problèmes.
Si vous ne voyez pas de données collectées, suivez ces étapes de base pour résoudre le problème.