In diesem Artikel wird beschrieben, wie Sie mithilfe des Azure-Portals, der Azure CLI, der PowerShell, der API oder der ARM-Vorlagen eine Datensammlungsregel (DCR) für den Metrikexport erstellen.
Wählen Sie im Azure-Portal im Menü „Monitor“ die Option Datensammlungsregeln und dann Erstellen aus.
Um eine DCR zum Sammeln von Plattformmetrikendaten zu erstellen, wählen Sie den Link oben auf der Seite aus.
Geben Sie auf der Seite Datensatzsammlungsregel erstellen einen Regelnamen ein, und wählen Sie Abonnement, Ressourcengruppe und Region für die DCR aus.
Wählen Sie Verwaltete Identität aktivieren aus, wenn Sie Metriken an ein Speicherkonto oder Event Hubs senden möchten.
Wählen Sie Weiteraus.
Wählen Sie auf der Seite Ressourcen die Option Ressourcen hinzufügen aus, um die Ressourcen hinzuzufügen, aus denen Sie Metriken sammeln möchten.
Wählen Sie "Weiter" aus, um zur Registerkarte " Sammeln und Übermitteln " zu wechseln.
Wählen Sie "Neuen Datenfluss hinzufügen" aus.
Der Ressourcentyp, den Sie im vorherigen Schritt ausgewählt haben, wird automatisch festgelegt. Fügen Sie weitere Ressourcentypen hinzu, wenn Sie diese Regel verwenden möchten, um in Zukunft Metriken aus mehreren Ressourcentypen zu sammeln.
Wählen Sie "Nächste Ziele " aus, um zur Registerkarte "Ziele " zu wechseln.
Um Metriken an einen Log Analytics-Arbeitsbereich zu senden, wählen Sie Azure Monitor-Protokolle aus der Dropdownliste Zieltyp aus.
- Wählen Sie das Abonnement und den Log Analytics-Arbeitsbereich aus, an das bzw. an den Sie die Metriken senden möchten.
Um Metriken an Event Hubs zu senden, wählen Sie Event Hub aus der Dropdownliste Zieltyp aus.
- Wählen Sie das Abonnement, den Event Hub-Namespace und den Event Hub-Instanznamen aus.
Um Metriken an ein Speicherkonto zu senden, wählen Sie Speicherkonto aus der Dropdownliste Zieltyp aus.
- Wählen Sie das Abonnement, das Speicherkonto und den Blob-Container aus, in dem Sie die Metriken speichern möchten.
Hinweis
Um Metriken an ein Speicherkonto oder Event Hubs zu senden, müssen sich die Ressource, die die Metriken generiert, der DCR sowie das Speicherkonto oder Event Hub in derselben Region befinden.
Um Metriken an einen Log Analytics-Arbeitsbereich zu senden, muss sich die DCR in derselben Region wie der Log Analytics-Arbeitsbereich befinden. Die Ressource, die die Metriken generiert, kann sich in einer beliebigen Region befinden.
Um Speicherkonto oder Event Hubs als Ziel auszuwählen, müssen Sie die verwaltete Identität für die DCR auf der Registerkarte „Basics“ aktivieren.
Wählen Sie Speichern und dann Überprüfen + Erstellen aus.
Erstellen Sie eine JSON-Datei, die die Spezifikation der Sammlungsregel enthält. Weitere Informationen finden Sie unter DCR-Spezifikationen. Beispiele für JSON-Dateien finden Sie unter Beispielmetriken Export-JSON-Objekte.
Von Bedeutung
Die Regeldatei hat das gleiche Format, das für PowerShell und die REST-API verwendet wird, die Datei darf jedoch nicht identity, location oder kind enthalten. Diese Parameter werden mit dem Befehl az monitor data-collection rule create angegeben.
Verwenden Sie den folgenden Befehl, um eine Datensammlungsregel für Metriken mithilfe der Azure CLI zu erstellen.
az monitor data-collection rule create
--name
--resource-group
--location
--kind PlatformTelemetry
--rule-file
[--identity "{type:'SystemAssigned'}" ]
Für Speicherkonto- und Event Hubs-Ziele müssen Sie verwaltete Identität für den DCR mithilfe von --identity "{type:'SystemAssigned'}" aktivieren. Für den Log Analytics-Arbeitsbereich ist keine Identität erforderlich.
Beispiel:
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
Kopieren Sie die id und die principalId der DCR, um eine Rolle zuzuweisen und eine Verknüpfung zwischen der DCR und einer Ressource zu erstellen.
"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"
},
Erteilen von Schreibberechtigungen für die verwaltete Identität
Die vom DCR verwendete verwaltete Identität muss Schreibberechtigungen für das Ziel besitzen, wenn das Ziel ein Speicherkonto oder Event Hubs ist. Um Berechtigungen für die verwaltete Entität der Regel zu erteilen, weisen Sie der Entität die entsprechende Rolle zu.
In der folgenden Tabelle sind die für jeden Zieltyp erforderlichen Rollen aufgeführt:
| Zieltyp |
Rolle |
| Log Analytics-Arbeitsbereich |
nicht erforderlich |
| Azure-Speicherkonto |
Storage Blob Data Contributor |
| Ereignis-Hubs |
Azure Event Hubs Data Sender |
Weitere Informationen zum Zuweisen von Rollen finden Sie unter Zuweisen von Azure-Rollen zu einer verwalteten Identität.
Um einer verwalteten Identität mithilfe der CLI eine Rolle zuzuweisen, verwenden Sie az role assignment create. Weitere Informationen finden Sie unter Rollenzuweisungen – Erstellen.
Weisen Sie der verwalteten Identität der DCR die entsprechende Rolle zu.
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>
Im folgenden Beispiel wird die Rolle Storage Blob Data Contributor der verwalteten Identität der DCR für ein Speicherkonto zugewiesen.
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
Erstellen einer Zuordnung zur Datensammlungsregel
Nachdem Sie die Datensammlungsregel erstellt haben, erstellen Sie eine Datensammlungsregelzuordnung (Data Collection Rule Association, DCRA), um die Regel der zu überwachenden Ressource zuzuordnen. Weitere Informationen finden Sie unter Regelzuordnungen für die Datensammlung – Erstellen.
Verwenden Sie az monitor data-collection rule association create, um eine Zuordnung zwischen einer Datensammlungsregel und einer Ressource zu erstellen.
az monitor data-collection rule association create --name
--rule-id
--resource
Das folgende Beispiel erstellt eine Zuordnung zwischen einer Datensammlungsregel und einem 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"
Erstellen Sie eine JSON-Datei, die die Spezifikation der Sammlungsregel enthält. Weitere Informationen finden Sie unter DCR-Spezifikationen. Beispiele für JSON-Dateien finden Sie unter Beispielmetriken Export-JSON-Objekte.
Verwenden Sie den Befehl New-AzDataCollectionRule, um eine Datensammlungsregel für Metriken mithilfe von PowerShell zu erstellen. Weitere Informationen finden Sie unter New-AzDataCollectionRule.
New-AzDataCollectionRule -Name
-ResourceGroupName
-JsonFilePath
Beispiel:
New-AzDataCollectionRule -Name dcr-powershell-hub -ResourceGroupName rg-001 -JsonFilePath dcr-storage-account.json
Kopieren Sie id und IdentityPrincipalId der DCR, um die Rolle zuzuweisen, um eine Zuordnung zwischen der DCR und einer Ressource zu erstellen.
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 : {
}
Erteilen von Schreibberechtigungen für die verwaltete Identität
Die vom DCR verwendete verwaltete Identität muss Schreibberechtigungen für das Ziel besitzen, wenn das Ziel ein Speicherkonto oder Event Hubs ist.
Um Berechtigungen für die verwaltete Entität der Regel zu erteilen, weisen Sie der Entität die entsprechende Rolle zu.
In der folgenden Tabelle sind die für jeden Zieltyp erforderlichen Rollen aufgeführt:
| Zieltyp |
Rolle |
| Log Analytics-Arbeitsbereich |
nicht erforderlich |
| Azure-Speicherkonto |
Storage Blob Data Contributor |
| Ereignis-Hubs |
Azure Event Hubs Data Sender |
Weitere Informationen finden Sie unter Zuweisen von Azure-Rollen zu einer verwalteten Identität. Informationen zum Zuweisen einer Rolle zu einer verwalteten Identität mithilfe von PowerShell finden Sie unter New-AzRoleAssignment.
Weisen Sie der verwalteten Identität der DCR die entsprechende Rolle mit New-AzRoleAssignment zu.
New-AzRoleAssignment -ObjectId <objectId> -RoleDefinitionName <roleName> -Scope /subscriptions/<subscriptionId>/resourcegroups/<resourceGroupName>/providers/<providerName>/<resourceType>/<resourceSubType>/<resourceName>
Im folgenden Beispiel wird die Rolle Azure Event Hubs Data Sender der verwalteten Identität der DCR auf Abonnementebene zugewiesen.
New-AzRoleAssignment -ObjectId eeeeeeee-ffff-aaaa-5555-666666666666 -RoleDefinitionName "Azure Event Hubs Data Sender" -Scope /subscriptions/bbbb1b1b-cc2c-DD3D-ee4e-ffffff5f5f5f
Erstellen einer Zuordnung zur Datensammlungsregel
Nachdem Sie die Datensammlungsregel erstellt haben, erstellen Sie eine Datensammlungsregelzuordnung (Data Collection Rule Association, DCRA), um die Regel der zu überwachenden Ressource zuzuordnen. Verwenden Sie New-AzDataCollectionRuleAssociation, um eine Zuordnung zwischen einer Datensammlungsregel und einer Ressource zu erstellen. Weitere Informationen finden Sie unter New-AzDataCollectionRuleAssociation.
New-AzDataCollectionRuleAssociation
-AssociationName <String>
-ResourceUri <String>
-DataCollectionRuleId <String>
Das folgende Beispiel erstellt eine Zuordnung zwischen einer Datensammlungsregel und einem 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
Erstellen einer Datensammlungsregel mithilfe der REST-API
Zum Erstellen einer Datensammlungsregel für Metriken sind die folgenden Schritte erforderlich:
- Erstellen Sie die Datensammlungsregel.
- Erteilen von Berechtigungen für die verwaltete Entität der Regel zum Schreiben in das Ziel
- Erstellen Sie die Zuordnung zur Datensammlungsregel.
Erstellen der Datensammlungsregel
Um eine DCR mit der REST-API zu erstellen, müssen Sie eine authentifizierte Anforderung mithilfe eines Bearertokens vornehmen. Weitere Informationen zur Authentifizierung mit Azure Monitor finden Sie unter Authentifizieren von Azure Monitor-Anforderungen.
Verwenden Sie den folgenden Endpunkt, um eine Datensammlungsregel für Metriken mithilfe der REST-API zu erstellen. Weitere Informationen finden Sie unter Datensammlungsregeln – Erstellen.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dataCollectionRuleName}?api-version=2023-03-11
Beispiel:
https://management.azure.com/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/rg-001/providers/Microsoft.Insights/dataCollectionRules/dcr-001?api-version=2023-03-11
Die Nutzlast ist ein JSON-Objekt, das eine Auflistungsregel definiert. Die Nutzdaten werden im Text der Anforderung gesendet. Weitere Informationen zur JSON-Struktur finden Sie unter DCR-Spezifikationen. Beispiele für DCR-JSON-Objekte finden Sie unter Beispielmetriken Export-JSON-Objekte.
Erteilen von Schreibberechtigungen für die verwaltete Identität
Die vom DCR verwendete verwaltete Identität muss Schreibberechtigungen für das Ziel besitzen, wenn das Ziel ein Speicherkonto oder Event Hubs ist.
Um Berechtigungen für die verwaltete Entität der Regel zu erteilen, weisen Sie der Entität die entsprechende Rolle zu.
In der folgenden Tabelle sind die für jeden Zieltyp erforderlichen Rollen aufgeführt:
| Zieltyp |
Rolle |
| Log Analytics-Arbeitsbereich |
nicht erforderlich |
| Azure-Speicherkonto |
Storage Blob Data Contributor |
| Ereignis-Hubs |
Azure Event Hubs Data Sender |
Weitere Informationen finden Sie unter Zuweisen von Azure-Rollen zu einer verwalteten Identität.
Informationen zum Zuweisen einer Rolle zu einer verwalteten Identität mithilfe von REST finden Sie unter Rollenzuweisungen – Erstellen.
Erstellen einer Zuordnung zur Datensammlungsregel
Nachdem Sie die Datensammlungsregel erstellt haben, erstellen Sie eine Datensammlungsregelzuordnung (Data Collection Rule Association, DCRA), um die Regel der zu überwachenden Ressource zuzuordnen. Weitere Informationen finden Sie unter Regelzuordnungen für die Datensammlung – Erstellen.
Verwenden Sie zum Erstellen einer DCRA mithilfe der REST-API den folgenden Endpunkt und die folgenden Nutzdaten:
PUT https://management.azure.com/{resourceUri}/providers/Microsoft.Insights/dataCollectionRuleAssociations/{associationName}?api-version=2022-06-0
Text:
{
"properties":
{
"description": "<DCRA description>",
"dataCollectionRuleId": "/subscriptions/{subscriptionId}/resourceGroups/{resource group name}/providers/Microsoft.Insights/dataCollectionRules/{DCR name}"
}
}
Beispiel:
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"
}
}
Verwenden Sie die folgende Vorlage, um eine DCR zu erstellen: Weitere Informationen finden Sie unter "Microsoft.Insights dataCollectionRules".
Vorlagendatei
{
"$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"
]
}
]
}
}
]
}
Parameterdatei
{
"$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"
}
}
}
Beispiel-DCR-Vorlage
{
"$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"
]
}
]
}
}
]
}
Nach dem Erstellen der DCR und DCRA kann es bis zu 30 Minuten dauern, bis die ersten Daten der Plattformmetriken im Log Analytics-Arbeitsbereich sichtbar werden. Sobald Daten fließen, beträgt die Latenzzeit für eine Plattform-Metrik-Zeitreihe, die in einen Log Analytics-Arbeitsbereich, ein Speicherkonto oder einen Event Hub fließt, ungefähr 3 Minuten, je nach Ressourcentyp.
Nachdem Sie den DCR installiert haben, kann es mehrere Minuten dauern, bis die Änderungen wirksam werden und Daten mit der aktualisierten DCR gesammelt werden. Wenn keine Daten erfasst werden, kann es schwierig sein, die Ursache des Problems zu ermitteln. Verwenden Sie die DCR-Überwachungsfeatures, die Metriken und Protokolle enthalten, um Problembehandlungen zu unterstützen.
Wenn die gesammelten Daten nicht angezeigt werden, führen Sie die folgenden grundlegenden Schritte aus, um das Problem zu beheben.