Per creare le DCR e le relative associazioni sono richieste le autorizzazioni seguenti:
Nella tabella seguente sono elencati i metodi per creare scenari di raccolta dati utilizzando il portale di Azure in cui viene creata la regola di raccolta dati (DCR). In questi casi non è necessario interagire direttamente con la regola di raccolta dati.
Per creare una regola di raccolta dati usando l'interfaccia della riga di comando di Azure, PowerShell, l'API o i modelli di ARM, creare un file JSON, a partire da una delle regole di raccolta dati. Utilizzare le informazioni in Struttura di una regola di raccolta dati in Monitoraggio di Azure per modificare il file JSON per l'ambiente e i requisiti specifici.
Creare con il portale di Azure
Il portale di Azure offre un'esperienza semplificata per la creazione di una regola di raccolta dati per macchine virtuali e set di scalabilità di macchine virtuali. Usando questo metodo, non è necessario conoscere la struttura di una regola di raccolta dati, a meno che non si voglia implementare una funzionalità avanzata, ad esempio una trasformazione. Il processo di creazione di questa regola di raccolta dati con varie origini dati è descritto in Raccogliere dati con l'agente di Monitoraggio di Azure.
Importante
Creare la regola di raccolta dati nella stessa area dell'area di lavoro Log Analytics di destinazione o dell'area di lavoro Monitoraggio di Azure. La regola di raccolta dati può essere associata a computer o contenitori da qualsiasi sottoscrizione o gruppo di risorse nel tenant. Per inviare dati tra tenant, è necessario abilitare prima Azure Lighthouse.
Nel menu Monitoraggio nel portale di Azure, selezionare Regole di raccolta dati>Crea per aprire la pagina di creazione di DCR.
La pagina Basic include informazioni di base sul Registro Azure Container.
Impostazione |
Descrizione |
Nome della regola |
Nome del Registro Azure Container. Deve trattarsi di un nome descrittivo che consenta di identificare la regola. |
Abbonamento |
Sottoscrizione per archiviare il Registro Azure Container. La sottoscrizione non deve essere la stessa sottoscrizione delle macchine virtuali. |
Gruppo di risorse |
Gruppo di risorse per archiviare il Registro Azure Container. Il gruppo di risorse non deve essere lo stesso gruppo di risorse delle macchine virtuali. |
Paese |
Area in cui archiviare il Registro Azure Container. L'area geografica essere la stessa area di qualsiasi area di lavoro Log Analytics o di Monitoraggio di Azure usata in una destinazione del Registro Azure Container. Se si dispone di aree di lavoro in aree diverse, creare più controller di dominio associati allo stesso set di computer. |
Tipo di piattaforma |
Specifica il tipo di origini dati che saranno disponibili per il Controller di dominio, Windows o Linux. Nessuno consente entrambi. 1 |
Endpoint di raccolta dati |
Specifica l'endpoint di raccolta dati usato per raccogliere dati. Il DCE è necessario solo se si usano collegamenti privati di Monitoraggio di Azure. Questo controller di dominio deve trovarsi nella stessa area del DCR. Per altre informazioni, vedere Come configurare gli endpoint di raccolta dati in base alla distribuzione. |
1 Questa opzione imposta l'attributo kind
nel DCR. Esistono altri valori che possono essere impostati per questo attributo, ma non sono disponibili nel portale.
Aggiungere le risorse
La pagina Risorse consente di aggiungere risorse da associare al Registro Azure Container. Selezionare + Aggiungi risorse per selezionare risorse. L'agente di Monitoraggio di Azure verrà installato automaticamente in tutte le risorse che non ne dispongono già.
Importante
Il portale abilita l'identità gestita assegnata dal sistema nelle risorse di destinazione, insieme alle identità assegnate dall'utente esistenti, se presenti. Per le applicazioni esistenti, a meno che non si specifichi l'identità assegnata dall'utente nella richiesta, per impostazione predefinita il computer usa l'identità assegnata dal sistema.
Se il computer monitorato non si trova nella stessa area dell'area di lavoro Log Analytics di destinazione e si stanno raccogliendo tipi di dati che richiedono un controller di dominio, selezionare Abilita endpoint di raccolta dati e selezionare un endpoint nell'area di ogni computer monitorato. Se il computer monitorato si trova nella stessa area dell'area di lavoro Log Analytics di destinazione o se non è necessario un controller di dominio, non selezionare un endpoint di raccolta dati nella scheda Risorse.
Aggiungere origini dati
La pagina Raccolta e recapito consente di aggiungere e configurare origini dati per il DCR e una destinazione per ognuno di essi.
Elemento della schermata |
Descrizione |
Origine dati |
Selezionare un Tipo di origine dati e definire i campi correlati in base al tipo di origine dati selezionato. Per informazioni dettagliate sulla configurazione di ogni tipo di origine dati, vedere gli articoli in Origini dati. |
Destinazione |
Aggiungere una o più destinazioni per ogni origine dati. È possibile selezionare più destinazioni di uno stesso tipo o di tipi diversi. Ad esempio, è possibile selezionare più aree di lavoro Log Analytics (operazione nota anche come multihoming). Vedere i dettagli per ogni tipo di dati per le diverse destinazioni supportate. |
Un DCR può contenere più origini dati diverse fino a un limite di 10 origini dati in un singolo record di dominio. È possibile combinare origini dati diverse nello stesso DCR, ma ò in genere consigliabile creare controller di dominio diversi per scenari di raccolta dati diversi. Per consigli su come organizzare i DCR, vedere Procedure consigliate per la creazione e la gestione delle regole di raccolta dati in Monitoraggio di Azure.
Nota
Se si crea una regola di raccolta dati con la procedura guidata sulle regole di raccolta dati, l'invio dei dati alle destinazioni potrebbe richiedere fino a 5 minuti.
Creare con l'interfaccia della riga di comando
Usare il comando az monitor data-collection rule create per creare una regola di raccolta dati dal file JSON.
az monitor data-collection rule create --location 'eastus' --resource-group 'my-resource-group' --name 'my-dcr' --rule-file 'C:\MyNewDCR.json' --description 'This is my new DCR'
Usare il comando az monitor data-collection rule association create per creare un'associazione tra la regola di raccolta dati e la risorsa.
az monitor data-collection rule association create --name "my-vm-dcr-association" --rule-id "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.Insights/dataCollectionRules/my-dcr" --resource "subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.Compute/virtualMachines/my-vm"
Creare con PowerShell
Usare il cmdlet New-AzDataCollectionRule per creare una regola di raccolta dati dal file JSON.
New-AzDataCollectionRule -Name 'my-dcr' -ResourceGroupName 'my-resource-group' -JsonFilePath 'C:\MyNewDCR.json'
Usare il comando New-AzDataCollectionRuleAssociation per creare un'associazione tra la regola di raccolta dati e la risorsa.
New-AzDataCollectionRuleAssociation -TargetResourceId '/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.Compute/virtualMachines/my-vm' -DataCollectionRuleId '/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/microsoft.insights/datacollectionrules/my-dcr' -AssociationName 'my-vm-dcr-association'
Creare con l'API
Usare l'API di creazione DCR per creare la regola di raccolta dati dal file JSON. Per chiamare un'API REST è possibile usare qualsiasi metodo, come illustrato negli esempi seguenti.
$ResourceId = "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.Insights/dataCollectionRules/my-dcr"
$FilePath = ".\my-dcr.json"
$DCRContent = Get-Content $FilePath -Raw
Invoke-AzRestMethod -Path ("$ResourceId"+"?api-version=2022-06-01") -Method PUT -Payload $DCRContent
ResourceId="/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/my-resource-group/providers/Microsoft.Insights/dataCollectionRules/my-dcr"
FilePath="my-dcr.json"
az rest --method put --url $ResourceId"?api-version=2022-06-01" --body @$FilePath
Creare un modello di Azure Resource Manager
Vedere i riferimenti seguenti per la definizione delle regole di raccolta dati e delle associazioni in un modello.
DCR
Usare il modello seguente per creare una DCR usando le informazioni della Struttura di una regola di raccolta dati in Monitoraggio di Azure e Regole di raccolta dati (DCR) di esempio in Monitoraggio di Azure, per definire dcr-properties
.
{
"$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')]",
"location": "[parameters('location')]",
"apiVersion": "2021-09-01-preview",
"properties": {
"<dcr-properties>"
}
}
]
}
Associazione DCR - Macchina virtuale di Azure
L'esempio seguente crea un'associazione tra una macchina virtuale di Azure e una regola di raccolta dati.
File modello Bicep
@description('The name of the virtual machine.')
param vmName string
@description('The name of the association.')
param associationName string
@description('The resource ID of the data collection rule.')
param dataCollectionRuleId string
resource vm 'Microsoft.Compute/virtualMachines@2021-11-01' existing = {
name: vmName
}
resource association 'Microsoft.Insights/dataCollectionRuleAssociations@2021-09-01-preview' = {
name: associationName
scope: vm
properties: {
description: 'Association of data collection rule. Deleting this association will break the data collection for this virtual machine.'
dataCollectionRuleId: dataCollectionRuleId
}
}
File modello di ARM
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string",
"metadata": {
"description": "The name of the virtual machine."
}
},
"associationName": {
"type": "string",
"metadata": {
"description": "The name of the association."
}
},
"dataCollectionRuleId": {
"type": "string",
"metadata": {
"description": "The resource ID of the data collection rule."
}
}
},
"resources": [
{
"type": "Microsoft.Insights/dataCollectionRuleAssociations",
"apiVersion": "2021-09-01-preview",
"scope": "[format('Microsoft.Compute/virtualMachines/{0}', parameters('vmName'))]",
"name": "[parameters('associationName')]",
"properties": {
"description": "Association of data collection rule. Deleting this association will break the data collection for this virtual machine.",
"dataCollectionRuleId": "[parameters('dataCollectionRuleId')]"
}
}
]
}
File di parametri
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"value": "my-azure-vm"
},
"associationName": {
"value": "my-windows-vm-my-dcr"
},
"dataCollectionRuleId": {
"value": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/microsoft.insights/datacollectionrules/my-dcr"
}
}
}
Associazione DCR - Server abilitato per Arc
L'esempio seguente crea un'associazione tra un server abilitato per Azure Arc e una regola di raccolta dati.
File modello Bicep
@description('The name of the virtual machine.')
param vmName string
@description('The name of the association.')
param associationName string
@description('The resource ID of the data collection rule.')
param dataCollectionRuleId string
resource vm 'Microsoft.HybridCompute/machines@2021-11-01' existing = {
name: vmName
}
resource association 'Microsoft.Insights/dataCollectionRuleAssociations@2021-09-01-preview' = {
name: associationName
scope: vm
properties: {
description: 'Association of data collection rule. Deleting this association will break the data collection for this Arc server.'
dataCollectionRuleId: dataCollectionRuleId
}
}
File modello di ARM
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"type": "string",
"metadata": {
"description": "The name of the virtual machine."
}
},
"associationName": {
"type": "string",
"metadata": {
"description": "The name of the association."
}
},
"dataCollectionRuleId": {
"type": "string",
"metadata": {
"description": "The resource ID of the data collection rule."
}
}
},
"resources": [
{
"type": "Microsoft.Insights/dataCollectionRuleAssociations",
"apiVersion": "2021-09-01-preview",
"scope": "[format('Microsoft.HybridCompute/machines/{0}', parameters('vmName'))]",
"name": "[parameters('associationName')]",
"properties": {
"description": "Association of data collection rule. Deleting this association will break the data collection for this Arc server.",
"dataCollectionRuleId": "[parameters('dataCollectionRuleId')]"
}
}
]
}
File di parametri
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentParameters.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"value": "my-hybrid-vm"
},
"associationName": {
"value": "my-windows-vm-my-dcr"
},
"dataCollectionRuleId": {
"value": "/subscriptions/00000000-0000-0000-0000-000000000000/resourcegroups/my-resource-group/providers/microsoft.insights/datacollectionrules/my-dcr"
}
}
}
Per modificare una DCR, è possibile usare uno qualsiasi dei metodi descritti nella sezione precedente per creare una regola di raccolta dati usando una versione modificata di JSON.
Se fosse necessario recuperare JSON per una DCR esistente, è possibile copiarlo dalla Visualizzazione JSON per la regola di raccolta dati nel portale di Azure. È anche possibile recuperarlo tramite una chiamata API, come illustrato nell'esempio di PowerShell riportato di seguito.
Per creare una regola di raccolta dati per l'esportazione delle metriche, usare il portale di Azure, l'interfaccia della riga di comando di Azure, PowerShell, l'API o i modelli di Resource Manager.
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": "0000aaaa-11bb-cccc-dd22-eeeeee333333",
"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.
Le metriche inviate a un'area di lavoro Log Analytics vengono archiviate nella tabella AzureMetricsV2
. Usare lo strumento di esplorazione di Log Analytics per visualizzare la tabella e verificare che i dati vengano inseriti.
Per altre informazioni, vedere Panoramica di Log Analytics in Monitoraggio di Azure.