Esportazione di metriche tramite regole di raccolta dati (anteprima)
Le regole di raccolta dati (DCR) vengono usate per raccogliere dati di monitoraggio dalle risorse di Azure. Per un elenco di scenari di raccolta dati, vedere Regole di raccolta dati - Panoramica. È ora possibile usare DCR per raccogliere ed esportare metriche della piattaforma.
Attualmente, le metriche della piattaforma possono essere raccolte usando sia DCR che Impostazioni di diagnostica. Un numero crescente di risorse supporta l'esportazione delle metriche tramite DCR. Per un elenco delle risorse supportate, vedere Risorse e aree supportate.
L'uso di DCR per esportare le metriche offre i vantaggi seguenti rispetto a Impostazioni di diagnostica:
- La configurazione di DCR consente di esportare metriche con dimensioni.
- La configurazione di DCR consente di filtrare le metriche in base al nome, in modo da poter esportare solo le metriche necessarie.
- Le DCR sono più flessibili e scalabili rispetto a Impostazioni di diagnostica.
- La latenza end-to-end per le DCR è inferiore ai 3 minuti. Si tratta di un miglioramento fondamentale rispetto a Impostazioni di diagnostica, in cui la latenza di esportazione delle metriche è di 6-10 minuti.
Usare l'esportazione delle metriche tramite DCR per l'esportazione continua dei dati delle metriche. Per eseguire query su dati storici, usare l'API Batch metriche del piano dati. Per un confronto dei due servizi, vedere Query batch su metriche del piano dati vs. esportazione delle metriche.
Creare DCR per le metriche usando l'API REST, l'interfaccia della riga di comando di Azure o Azure PowerShell. Per informazioni su come creare DCR per l'esportazione delle metriche, vedere Creare regole di raccolta dati per le metriche.
Quando si crea un record di controllo di dominio, è necessario creare un'associazione di regole di raccolta dati (DCRA) per associare la DCR alla risorsa da monitorare. È possibile creare una singola DCR per molti tipi di risorse. Per informazioni su come creare una DCRA, vedere Creare associazioni di regole di raccolta dati. Quando si usa il portale di Azure, la DCRA viene creata automaticamente.
Nota
È possibile usare DCR e Impostazioni di diagnostica contemporaneamente. È consigliabile disabilitare le impostazioni di diagnostica per le metriche quando si usano DCR per evitare la duplicazione di raccolta dati.
Destinazioni di esportazione
Le metriche possono essere esportate in una delle destinazioni seguenti per DCR:
Aree di lavoro Log Analytics.
L'esportazione in aree di lavoro Log Analytics può essere in più aree. L'area di lavoro Log Analytics e la DCR devono trovarsi nella stessa area, ma le risorse monitorate possono trovarsi in qualsiasi area. Le metriche inviate a un'area di lavoro Log Analytics vengono archiviate nella tabellaAzureMetricsV2
.Account di archiviazione di Azure.
L'account di archiviazione, la DCR e le risorse monitorate devono trovarsi nella stessa area.Hub eventi.
Gli hub eventi, la DCR e le risorse monitorate devono trovarsi nella stessa area.
Per un esempio dei dati in ogni destinazione, vedere Dati esportati.
Nota
La latenza per l'esportazione delle metriche è di circa 3 minuti. Attendere fino a 15 minuti perché le metriche inizino a essere mostrate nella destinazione dopo la configurazione iniziale.
Limiti
I DCR per l'esportazione delle metriche presentano le limitazioni seguenti:
- È possibile specificare un solo tipo di destinazione per ogni DCR.
- Un massimo di 5 DCR può essere associato a una singola risorsa di Azure.
- L'esportazione delle metriche da parte di DCR non supporta l'esportazione di metriche con granularità oraria.
Risorse e aree supportate
Le risorse seguenti supportano l'esportazione delle metriche usando le regole di raccolta dati:
Tipo di risorsa | Specifica del flusso |
---|---|
Set di scalabilità di macchine virtuali | Microsoft.compute/virtualmachinescalesets |
Macchine virtuali | Microsoft.compute/virtualmachines |
Cache Redis | Microsoft.cache/redis |
Hub IOT | Microsoft.devices/iothubs |
Key Vault | Microsoft.keyvault/vaults |
Account di archiviazione | 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 |
Servizi multimediali | Microsoft.media/mediaservices Microsoft.media/mediaservices/streamingendpoints Microsoft.media/mediaservices/liveevents |
Protezione dei dati | Microsoft.dataprotection/backupvaults |
Servizio Azure Kubernetes | Microsoft.ContainerService/managedClusters |
Aree supportate
È possibile creare una DCR per l'esportazione di metriche in qualsiasi area, ma le risorse da cui si vogliono esportare le metriche devono trovarsi in una delle aree seguenti:
- Australia orientale
- Stati Uniti centrali
- CentralUsEuap
- Stati Uniti centro-meridionali
- Stati Uniti orientali
- Stati Uniti orientali 2
- Eastus2Euap
- Stati Uniti occidentali
- West US 2
- Europa settentrionale
- Europa occidentale
- Regno Unito meridionale
Specifiche di DCR
Le regole di raccolta dati vengono definite in un oggetto JSON. Per creare una DCR per l'esportazione di metriche sono necessarie le proprietà seguenti.
Proprietà | Descrizione |
---|---|
dataSources.platformTelemetry.streams |
Elenca i tipi di risorsa e le metriche. Specificare Metrics-Group-All per raccogliere tutte le metriche per la risorsa o specificare singole metriche. Formato: <resource type>:Metrics-Group-All | <metric name> Ad esempio, Microsoft.Compute/virtualMachines:Percentage CPU |
dataSources.platformTelemetry.name |
Nome dell'origine dati. |
destinations |
Destinazione per le metriche. Per DCR, è supportata una sola destinazione. Tipi di destinazioni validi: storageAccounts logAnalytics eventHubs |
dataflows.streams |
Elenco di flussi da passare alla destinazione nel formato: <resource type>:Metrics-Group-All |<metric name> Ad esempio, Microsoft.Compute/virtualMachines:Percentage CPU" |
dataflows.destinations |
Destinazione a cui passare i flussi come definito nella proprietà destinations . |
identity.type |
Tipo di identità da usare per la DCR. Obbligatorio per destinazioni dell'account di archiviazione. Valori validi: systemAssigned userAssigned |
kind |
Tipo di regola di raccolta dati. Impostare su PlatformTelemetry per l'esportazione di metriche. |
location |
Posizione della DCR. |
Nota
È possibile specificare un solo tipo di destinazione per ogni DCR.
Formato JSON per l'esportazione di DCR per le metriche
Usare il formato nell'oggetto JSON generico seguente per creare un record di controllo di dominio per l'esportazione delle metriche. Rimuovere le destinazioni indesiderate durante la copia dell'esempio.
{
"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
Quando si crea una DCR per l'esportazione di metriche usando l'interfaccia della riga di comando, kind
, location
e identity
vengono passati come argomenti e devono essere rimossi dall'oggetto JSON.
Identità assegnate dall'utente e dal sistema
Le identità assegnate dall'utente e dal sistema sono supportate durante la creazione di DCR. È necessaria un'identità per le destinazioni dell'account di archiviazione e di Hub eventi. È possibile usare un'identità assegnata dal sistema o assegnata dall'utente. Per altre informazioni, vedere Assegnare ruoli di Azure a un'identità gestita.
Per usare un'identità assegnata dal sistema, aggiungere l'oggetto identity
come segue:
"identity": {
"type": "systemAssigned"
},
Per usare un'identità assegnata dall'utente, aggiungere l'oggetto identity
come segue:
"identity": {
"type": "userassigned",
"userAssignedIdentities": {
"/subscriptions/<subscriptionId>/resourceGroups/<resource group name>/providers/Microsoft.ManagedIdentity/userAssignedIdentities/<identity name>": {}
}
}
Filtrare metriche
Quando si specificano le metriche da esportare, è possibile filtrarle in base al nome o richiedere tutte le metriche usando Metrics-Group-All
. Per un elenco delle metriche supportate, vedere Metriche supportate e categorie di log per tipo di risorsa.
Per specificare più metriche dello stesso tipo di risorsa, creare un elemento di flusso separato per ogni metrica.
L'esempio seguente illustra come filtrare le metriche in base al nome.
{
"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"
}
Le metriche campione esportano oggetti JSON
Gli esempi seguenti illustrano gli oggetti JSON DCR campione per l'esportazione di metriche in ogni tipo di destinazione.
Aree di lavoro di Log Analytics
L'esempio seguente illustra una regola di raccolta dati per metriche che invia metriche specifiche da macchine virtuali, set di scalabilità di macchine virtuali e tutte le metriche dell'insieme di credenziali delle chiavi a un'area di lavoro 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"
}
Creare DCR per l'esportazione delle metriche
Creare DCR per l'esportazione di metriche usando il portale di Azure, l'interfaccia della riga di comando, PowerShell, l'API REST o il modello di Resource Manager. Per altre informazioni, vedere Creare e modificare regole di raccolta dati e associazioni in Monitoraggio di Azure.
Dati esportati
Negli esempi seguenti vengono illustrati i dati esportati in ogni destinazione.
Aree di lavoro Log Analytics
I dati esportati in un'area di lavoro Log Analytics vengono archiviati nella tabella AzureMetricsV2
nell'area di lavoro Log Analytics nel formato seguente:
Column | Type | Descrizione |
---|---|---|
Media | real | Valore medio raccolto durante l'intervallo di tempo. |
_BilledSize | real | Dimensioni del record in byte |
Count | real | Numero di campioni raccolti durante l'intervallo di tempo. |
Dimensione | dynamic | Dimensione associata della metrica in formato JSON. |
_IsBillable | string | Specifica se l'inserimento dei dati è fatturabile. Quando _IsBillable è false , l'inserimento dati non viene fatturato all'account Azure |
Massimo | real | Valore massimo raccolto durante l'intervallo di tempo. |
MetricCategory | string | Nome della categoria della metrica. |
MetricName | string | Nome visualizzato della metrica. |
MetricResourceType | string | Tipo di risorsa della risorsa di Azure che crea report per la metrica. |
Requisiti minimi | real | Valore minimo raccolto durante l'intervallo di tempo. |
_ResourceId | string | Identificatore univoco della risorsa a cui è associato il record. |
SourceSystem | string | Tipo di agente da cui è stato raccolto l'evento. Ad esempio, OpsManager per l'agente Windows, la connessione diretta o Operations Manager, Linux per tutti gli agenti Linux o Azure per Diagnostica di Azure |
_SubscriptionId | string | Identificatore univoco della sottoscrizione a cui è associato il record |
TenantId | string | L'ID dell'area di lavoro Log Analytics |
TimeGenerated | datetime | Timestamp (ora UTC) di quando è stato generato il record. |
TimeGrain | string | Intervallo di tempo della metrica. |
Totale | real | Somma di tutti i valori nell'intervallo di tempo. |
Type | string | Nome della tabella |
UnitName | string | Unità della metrica. |
Ad esempio:
Account di archiviazione
L'esempio seguente mostra i dati esportati in un account di archiviazione:
{
"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"
}
}
Hub eventi
L'esempio seguente mostra una metrica esportata in Hub eventi.
{
"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"
}