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 Weiter aus.
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 der Ressource, die im vorherigen Schritt ausgewählt wurde, wird automatisch ausgewählt. 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, muss sich die Ressource, die Metriken generiert, die DCR und 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.
Wichtig
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. Die Identität ist für den Log Analytics-Arbeitsbereiche nicht 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 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/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 |
Role |
Log Analytics-Arbeitsbereich |
nicht erforderlich |
Azure Storage-Konto |
Storage Blob Data Contributor |
Event 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
Zuordnung zur Datensammlungsregel erstellen
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
Mit dem folgenden Beispiel wird eine Zuordnung zwischen einer Datensammlungsregel und einem Schlüsseltresor erstellt.
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 die id
und die 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 |
Role |
Log Analytics-Arbeitsbereich |
nicht erforderlich |
Azure Storage-Konto |
Storage Blob Data Contributor |
Event 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
Zuordnung zur Datensammlungsregel erstellen
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>
Mit dem folgenden Beispiel wird eine Zuordnung zwischen einer Datensammlungsregel und einem Schlüsseltresor erstellt.
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 der Datensammlungsregel.
- Erteilen von Berechtigungen für die verwaltete Entität der Regel zum Schreiben in das Ziel
- Erstellen der 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 |
Role |
Log Analytics-Arbeitsbereich |
nicht erforderlich |
Azure Storage-Konto |
Storage Blob Data Contributor |
Event 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
Zuordnung zur Datensammlungsregel erstellen
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 können bis zu 30 Minuten für die ersten Daten der Plattformmetriken im Log Analytics-Arbeitsbereich angezeigt 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 dem 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.