Nel menu Monitoraggio del portale di Azure selezionare Regole di raccolta dati e quindi Crea.
Per creare un Registro Azure Container per raccogliere i dati delle metriche della piattaforma, selezionare il collegamento nella parte superiore della pagina.
Nella pagina Crea regola di raccolta dati immettere un nome per la regola, selezionare una sottoscrizione, un gruppo di risorse e un'area per il Registro Azure Container.
Selezionare Abilita identità gestita se si vogliono inviare metriche a un account di archiviazione o a Hub eventi.
Selezionare Avanti.
Nella pagina Risorse selezionare Aggiungi risorse per aggiungere le risorse da cui raccogliere le metriche.
Selezionare Avanti per passare alla scheda Raccogli e recapita.
Selezionare Aggiungi nuovo flusso di dati
Il tipo di risorsa della risorsa scelta nel passaggio precedente viene selezionato automaticamente. Aggiungere altri tipi di risorse se si vuole usare questa regola per raccogliere metriche da più tipi di risorse in futuro.
Selezionare Destinazioni successive per passare alla scheda Destinazioni.
Per inviare le metriche a un'area di lavoro Log Analytics, selezionare Log di Monitoraggio di Azure dall'elenco a discesa Tipo di destinazione.
- Selezionare la sottoscrizione e l'area di lavoro Log Analytics a cui inviare le metriche.
Per inviare le metriche a Hub eventi, selezionare Hub eventi dall'elenco a discesa Tipo di destinazione.
- Selezionare la sottoscrizione, lo spazio dei nomi dell'hub eventi e il nome dell'istanza dell'hub eventi.
Per inviare le metriche a un account di archiviazione, selezionare Account di archiviazione nell'elenco a discesa Tipo di destinazione.
- Selezionare la sottoscrizione, l'account di archiviazione e il contenitore BLOB in cui archiviare le metriche.
Nota
Per inviare le metriche a un account di archiviazione o a Hub eventi, la risorsa che genera le metriche, il registro di dominio e l'account di archiviazione o l'hub eventi devono trovarsi nella stessa area.
Per inviare le metriche a un'area di lavoro Log Analytics, il registro di dominio deve trovarsi nella stessa area dell'area di lavoro Log Analytics. La risorsa che genera le metriche può trovarsi in qualsiasi area.
Per selezionare Account di archiviazione o Hub eventi come destinazione, è necessario abilitare l'identità gestita per il Registro Azure Container nella scheda Informazioni di base.
Selezionare Salva e quindi Rivedi e crea.
Creare un file JSON contenente la specifica della regola di raccolta. Per altre informazioni, vedere Specifiche DCR. Per i file JSON di esempio, vedere Esempi di metriche esportare oggetti JSON.
Importante
Il file di regole ha lo stesso formato usato per PowerShell e l'API REST, ma il file non deve contenere identity
, location
o kind
. Questi parametri vengono specificati nel comando az monitor data-collection rule create
.
Usare il comando seguente per creare una regola di raccolta dati per le metriche usando l'interfaccia della riga di comando di Azure.
az monitor data-collection rule create
--name
--resource-group
--location
--kind PlatformTelemetry
--rule-file
[--identity "{type:'SystemAssigned'}" ]
Per le destinazioni dell'account di archiviazione e di Hub eventi, è necessario abilitare l'identità gestita per il Registro Azure Container tramite --identity "{type:'SystemAssigned'}"
. L'identità non è necessaria per le aree di lavoro Log Analytics.
ad esempio:
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
Copiare id
e principalId
del record di controllo di dominio da usare per assegnare il ruolo per creare un'associazione tra il record di dominio e una risorsa.
"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"
},
Concedere autorizzazioni di scrittura all'entità gestita
L'identità gestita usata dal Registro Azure Container deve disporre delle autorizzazioni di scrittura per la destinazione quando la destinazione è un account di archiviazione o Hub eventi.
Per concedere le autorizzazioni per l'entità gestita della regola, assegnare il ruolo appropriato all'entità.
La tabella seguente illustra i ruoli necessari per ogni tipo di destinazione:
Tipo destinazione |
Ruolo |
area di lavoro Log Analytics |
non obbligatorio |
Account di archiviazione di Azure |
Storage Blob Data Contributor |
Hub eventi |
Azure Event Hubs Data Sender |
Per altre informazioni sull'assegnazione dei ruoli, vedere Assegnare ruoli di Azure a un'identità gestita.
Per assegnare un ruolo a un'identità gestita tramite l'interfaccia della riga di comando, usare az role assignment create
. Per altre informazioni, vedere Assegnazioni di ruolo - Creare
Assegnare il ruolo appropriato all'identità gestita del Registro Azure Container.
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>
Nell'esempio seguente viene assegnato il ruolo Storage Blob Data Contributor
all'identità gestita del Registro Azure Container per un account di archiviazione.
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
Creare un'associazione di regole di raccolta dati
Dopo aver creato la regola di raccolta dati, creare un'associazione DCRA (Data Collection Rule Association) per associare la regola alla risorsa da monitorare. Per altre informazioni, vedere Associazioni delle regole di raccolta dati - Creare
Usare az monitor data-collection rule association create
per creare un'associazione tra una regola di raccolta dati e una risorsa.
az monitor data-collection rule association create --name
--rule-id
--resource
Nell'esempio seguente viene creata un'associazione tra una regola di raccolta dati e un insieme di credenziali delle chiavi.
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"
Creare un file JSON contenente la specifica della regola di raccolta. Per altre informazioni, vedere Specifiche DCR. Per i file JSON di esempio, vedere Esempi di metriche esportare oggetti JSON.
Usare il comando New-AzDataCollectionRule
per creare una regola di raccolta dati per le metriche tramite PowerShell. Per altre informazioni, vedere New-AzDataCollectionRule.
New-AzDataCollectionRule -Name
-ResourceGroupName
-JsonFilePath
ad esempio:
New-AzDataCollectionRule -Name dcr-powershell-hub -ResourceGroupName rg-001 -JsonFilePath dcr-storage-account.json
Copiare id
e IdentityPrincipalId
del record di controllo di dominio da usare per assegnare il ruolo per creare un'associazione tra il record di controllo di dominio e una risorsa.
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 : {
}
Concedere autorizzazioni di scrittura all'entità gestita
L'identità gestita usata dal Registro Azure Container deve disporre delle autorizzazioni di scrittura per la destinazione quando la destinazione è un account di archiviazione o Hub eventi.
Per concedere le autorizzazioni per l'entità gestita della regola, assegnare il ruolo appropriato all'entità.
La tabella seguente illustra i ruoli necessari per ogni tipo di destinazione:
Tipo destinazione |
Ruolo |
area di lavoro Log Analytics |
non obbligatorio |
Account di archiviazione di Azure |
Storage Blob Data Contributor |
Hub eventi |
Azure Event Hubs Data Sender |
Per altre informazioni, vedere Assegnare ruoli di Azure a un'identità gestita.
Per assegnare un ruolo a un'identità gestita tramite PowerShell, vedere New-AzRoleAssignment
Assegnare il ruolo appropriato all'identità gestita del record di dominio usando New-AzRoleAssignment
.
New-AzRoleAssignment -ObjectId <objectId> -RoleDefinitionName <roleName> -Scope /subscriptions/<subscriptionId>/resourcegroups/<resourceGroupName>/providers/<providerName>/<resourceType>/<resourceSubType>/<resourceName>
Nell'esempio seguente il ruolo Azure Event Hubs Data Sender
viene assegnato all'identità gestita del Registro Azure Container a livello di sottoscrizione.
New-AzRoleAssignment -ObjectId eeeeeeee-ffff-aaaa-5555-666666666666 -RoleDefinitionName "Azure Event Hubs Data Sender" -Scope /subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f
Creare un'associazione di regole di raccolta dati
Dopo aver creato la regola di raccolta dati, creare un'associazione DCRA (Data Collection Rule Association) per associare la regola alla risorsa da monitorare. Usare New-AzDataCollectionRuleAssociation
per creare un'associazione tra una regola di raccolta dati e una risorsa. Per altre informazioni, vedere New-AzDataCollectionRuleAssociation
New-AzDataCollectionRuleAssociation
-AssociationName <String>
-ResourceUri <String>
-DataCollectionRuleId <String>
Nell'esempio seguente viene creata un'associazione tra una regola di raccolta dati e un insieme di credenziali delle chiavi.
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
Creare una regola di raccolta dati usando l'API REST
La creazione di una regola di raccolta dati per le metriche richiede la procedura seguente:
- Creare la regola di raccolta dati.
- Concedere le autorizzazioni per l'entità gestita della regola per scrivere nella destinazione
- Creare un'associazione di regole di raccolta dati.
Creare la regola di raccolta dati
Per creare un record di dominio usando l'API REST, è necessario effettuare una richiesta autenticata usando un token di connessione. Per altre informazioni sull'autenticazione con Monitoraggio di Azure, vedere Autenticare le richieste di Monitoraggio di Azure.
Usare l'endpoint seguente per creare una regola di raccolta dati per le metriche usando l'API REST.
Per altre informazioni, vedere Regole di raccolta dati - Creare.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dataCollectionRuleName}?api-version=2023-03-11
Ad esempio:
https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.Insights/dataCollectionRules/dcr-001?api-version=2023-03-11
Il payload è un oggetto JSON che definisce una regola di raccolta. Il payload viene inviato nel corpo della richiesta. Per altre informazioni sulla struttura JSON, vedere Specifiche DCR. Per oggetti JSON DCR di esempio, vedere Esempio di esportazione di oggetti JSON metrica
Concedere autorizzazioni di scrittura all'entità gestita
L'identità gestita usata dal Registro Azure Container deve disporre delle autorizzazioni di scrittura per la destinazione quando la destinazione è un account di archiviazione o Hub eventi.
Per concedere le autorizzazioni per l'entità gestita della regola, assegnare il ruolo appropriato all'entità.
La tabella seguente illustra i ruoli necessari per ogni tipo di destinazione:
Tipo destinazione |
Ruolo |
area di lavoro Log Analytics |
non obbligatorio |
Account di archiviazione di Azure |
Storage Blob Data Contributor |
Hub eventi |
Azure Event Hubs Data Sender |
Per altre informazioni, vedere Assegnare ruoli di Azure a un'identità gestita.
Per assegnare un ruolo a un'identità gestita tramite REST, vedere Assegnazioni di ruolo - Creare
Creare un'associazione di regole di raccolta dati
Dopo aver creato la regola di raccolta dati, creare un'associazione DCRA (Data Collection Rule Association) per associare la regola alla risorsa da monitorare. Per altre informazioni, vedere Associazioni delle regole di raccolta dati - Creare
Per creare una DCRA usando l'API REST, usare l'endpoint e il payload seguenti:
PUT https://management.azure.com/{resourceUri}/providers/Microsoft.Insights/dataCollectionRuleAssociations/{associationName}?api-version=2022-06-0
Corpo:
{
"properties":
{
"description": "<DCRA description>",
"dataCollectionRuleId": "/subscriptions/{subscriptionId}/resourceGroups/{resource group name}/providers/Microsoft.Insights/dataCollectionRules/{DCR name}"
}
}
ad esempio:
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"
}
}
Usare il modello seguente per creare un record di controllo di dominio. Per altre informazioni, vedere Microsoft.Insights dataCollectionRules
File del modello
{
"$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"
]
}
]
}
}
]
}
File dei parametri
{
"$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"
}
}
}
Modello DCR di esempio:
{
"$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"
]
}
]
}
}
]
}
Dopo aver creato DCR e DCRA, attendere fino a 30 minuti prima che i dati delle metriche della piattaforma vengano visualizzati nell'area di lavoro Log Analytics. Dopo l'avvio del flusso dei dati, la latenza per una serie temporale della metrica della piattaforma che passa a un'area di lavoro Log Analytics, a un account di archiviazione o a degli Hub eventi è di circa 3 minuti, a seconda del tipo di risorsa.
Dopo aver installato il Controller di dominio, potrebbero essere necessari alcuni minuti prima che le modifiche siano effettive e che i dati vengano raccolti con il DCR aggiornato. Se non vengono visualizzati dati raccolti, può essere difficile determinare la causa radice del problema. Usare le funzionalità di monitoraggio di DCR, che includono metriche e log per risolvere i problemi.
Se non vengono visualizzati i dati raccolti, seguire questa procedura di base per risolvere il problema.