Skicka klientdata för virtuella datorer till Event Hubs och Storage (förhandsversion)
Samla in data från en virtuell datorklient med Azure Monitor beskriver hur du samlar in data från virtuella datorer med Azure Monitor. Den här artikeln beskriver hur du skickar dessa data som beskrivs till Azure Storage och Event Hubs. Den här funktionen är för närvarande i offentlig förhandsversion.
Tips/Råd
Som ett alternativ till lagring bör du skapa en tabell med hjälpplanen på Log Analytics-arbetsytan för kostnadseffektiv loggning.
I följande tabell visas de datakällor som stöds av den här funktionen.
Datatyper som stöds
Datatyperna i följande tabell stöds av den här funktionen. Var och en har en länk till en artikel som beskriver informationen om den källan.
Datakälla | Operativsystem | Destinationer som stöds |
---|---|---|
Windows-händelseloggar | Windows | Eventhub Förvaring |
Syslog | Linux | Eventhub Förvaring |
Prestandaräknare | Windows Linux |
Eventhub Förvaring |
IIS-loggar | Windows Linux |
Storage Blob |
Textloggar | Windows Linux |
Storage Blob |
Följande loggar stöds inte:
- ETW-Loggar. Detta planeras för senare lansering.
- Windows Kraschdumpar. Azure Monitoring Agent är avsedd för telemetriloggar och inte för stora filtyper.
- Programloggar. Dessa samlas in av Application Insights, som inte använder DCR.
- .NET-händelsekällans loggar
Anmärkning
Den här funktionen stöds endast för virtuella Azure-datorer. Arc-aktiverade virtuella datorer stöds inte.
Behörigheter
Den virtuella agentdatorn måste ha systemtilldelad hanterad identitet aktiverad eller en användartilldelad hanterad identitet kopplad till den. Användartilldelad hanterad identitet rekommenderas för bättre skalbarhet och prestanda. Agenten måste konfigureras för att använda den hanterade identiteten för autentisering enligt beskrivningen i Azure Monitor-agentkraven.
Följande RBAC-roller måste tilldelas till den hanterade identiteten beroende på vilka datamål du använder.
Resmål | RBAC-roll |
---|---|
Lagringstabell | Storage Table Data Contributor |
Lagringsblob | Storage Blob Data Contributor |
Event Hub | Azure Event Hubs Data Sender |
Skapa en datainsamlingsregel
Det finns för närvarande ingen användargränssnittsupplevelse för att skapa en datainsamlingsregel (DCR) som skickar data till Event Hubs eller lagring. I följande process beskrivs stegen för att skapa en DCR med hjälp av en ARM-mall i Azure-portalen. Du kan också använda dcr-exemplet här för att skapa en ny DCR med andra metoder.
Varning
Redigera inte en befintlig DCR som du skapade med hjälp av Samla in data från en virtuell datorklient med Azure Monitor för att lägga till Event Hubs eller lagring. Dessa destinationer kräver en DCR med en kind
av AgentDirectToStore
. Skapa i stället flera DCR:er med samma datakällor som skickas till olika destinationer.
I sökrutan för Azure Portal skriver du in mallen och väljer sedan Distribuera en anpassad mall. Välj alternativet för att skapa din egen mall i redigeringsprogrammet.
Klistra in följande malldefinition i redigeraren:
{ "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#", "contentVersion": "1.0.0.0", "parameters": { "location": { "type": "string", "defaultValue": "[resourceGroup().location]", "metadata": { "description": "Location for all resources." } }, "dataCollectionRulesName": { "defaultValue": "[concat(resourceGroup().name, 'DCR')]", "type": "String" }, "storageAccountName": { "defaultValue": "[concat(resourceGroup().name, 'sa')]", "type": "String" }, "eventHubNamespaceName": { "defaultValue": "[concat(resourceGroup().name, 'eh')]", "type": "String" }, "eventHubInstanceName": { "defaultValue": "[concat(resourceGroup().name, 'ehins')]", "type": "String" } }, "resources": [ { "type": "Microsoft.Insights/dataCollectionRules", "apiVersion": "2022-06-01", "name": "[parameters('dataCollectionRulesName')]", "location": "[parameters('location')]", "kind": "AgentDirectToStore", "properties": { "dataSources": { "performanceCounters": [ { "streams": [ "Microsoft-Perf" ], "samplingFrequencyInSeconds": 10, "counterSpecifiers": [ "\\Process(_Total)\\Working Set - Private", "\\Memory\\% Committed Bytes In Use", "\\LogicalDisk(_Total)\\% Free Space", "\\Network Interface(*)\\Bytes Total/sec" ], "name": "perfCounterDataSource10" } ], "windowsEventLogs": [ { "streams": [ "Microsoft-Event" ], "xPathQueries": [ "Application!*[System[(Level=2)]]", "System!*[System[(Level=2)]]" ], "name": "eventLogsDataSource" } ], "iisLogs": [ { "streams": [ "Microsoft-W3CIISLog" ], "logDirectories": [ "C:\\inetpub\\logs\\LogFiles\\W3SVC1\\" ], "name": "myIisLogsDataSource" } ], "logFiles": [ { "streams": [ "Custom-Text-logs" ], "filePatterns": [ "C:\\JavaLogs\\*.log" ], "format": "text", "settings": { "text": { "recordStartTimestampFormat": "ISO 8601" } }, "name": "myTextLogs" } ] }, "destinations": { "eventHubsDirect": [ { "eventHubResourceId": "[resourceId('Microsoft.EventHub/namespaces/eventhubs', parameters('eventHubNamespaceName'), parameters('eventHubInstanceName'))]", "name": "myEh1" } ], "storageBlobsDirect": [ { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "blobNamedPerf", "containerName": "PerfBlob" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "blobNamedWin", "containerName": "WinEventBlob" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "blobNamedIIS", "containerName": "IISBlob" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "blobNamedTextLogs", "containerName": "TxtLogBlob" } ], "storageTablesDirect": [ { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "tableNamedPerf", "tableName": "PerfTable" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "tableNamedWin", "tableName": "WinTable" }, { "storageAccountResourceId": "[resourceId('Microsoft.Storage/storageAccounts/', parameters('storageAccountName'))]", "name": "tableUnnamed" } ] }, "dataFlows": [ { "streams": [ "Microsoft-Perf" ], "destinations": [ "myEh1", "blobNamedPerf", "tableNamedPerf", "tableUnnamed" ] }, { "streams": [ "Microsoft-Event" ], "destinations": [ "myEh1", "blobNamedWin", "tableNamedWin", "tableUnnamed" ] }, { "streams": [ "Microsoft-W3CIISLog" ], "destinations": [ "blobNamedIIS" ] }, { "streams": [ "Custom-Text-logs" ], "destinations": [ "blobNamedTextLogs" ] } ] } } ] }
Redigera mallen enligt dina krav med hjälp av information om DCR-avsnitten i följande tabell. Mallen använder parametrar för att acceptera namnen på lagringskontot och händelsehubben, så du kan ange dessa när du sparar mallen eller i en parameterfil beroende på hur du distribuerar mallen. Mer information om DCR-strukturen finns i Strukturen för en datainsamlingsregel (DCR) i Azure Monitor .
Värde Beskrivning dataSources
Inlägg för varje datakälla som samlas in av DCR. Exempelmallen innehåller definitioner för loggar och prestandaräknare. Mer information om hur du konfigurerar dessa datakällor och andra som du kan lägga till i mallen finns i Exempel på datainsamlingsregel (DCR) i Azure Monitor . destinations
Enkel post för varje destination.
Event Hubs
AnvändeventHubsDirect
för direktuppladdning till händelsehubben.eventHubResourceId
innehåller resurs-ID för händelsehubbens instans.
Lagringsblob
AnvändstorageBlobsDirect
för direktuppladdning till bloblagring.storageAccountResourceId
innehåller resurs-ID för lagringskontot.containerName
innehåller namnet på containern.
Lagringstabell
AnvändsstorageTablesDirect
för direktuppladdning till tabelllagring.storageAccountResourceId
innehåller resurs-ID för lagringskontot.tableName
innehåller ett valfritt namn på tabellen.dataFlows
A dataflow
för att matcha varje inkommande ström med minst en destination. Data från den källan skickas till varje mål i dataflödet.Välj Spara och ange värden för de obligatoriska parametrarna.
Skapa DCR-association och distribuera Azure Monitor Agent
För att använda DCR måste den ha en association med en datainsamlingsregel (DCRA) för en eller flera virtuella datorer där Azure Monitor-agenten (AMA) är installerad. Se Installera och hantera Azure Monitor-agenten för olika alternativ för att installera agenten och Hantera regelassociationer för datainsamling i Azure Monitor för olika alternativ för att skapa DCRA.
Följande ARM-mall kan användas för att distribuera Azure Monitor-agenten och skapa DCRA för en viss virtuell dator. Mallen använder en användartilldelad hanterad identitet (UAI) för autentisering. UAI måste skapas innan du distribuerar mallen. Du kan också använda en systemtilldelad hanterad identitet, men detta rekommenderas inte för produktionsarbetsbelastningar.
Använd processen ovan eller någon annan giltig metod för att distribuera den här mallen. Den innehåller parametrar för nödvändiga värden för att identifiera den virtuella datorn och DCR, så du behöver inte ändra själva mallen.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"vmName": {
"defaultValue": "[concat(resourceGroup().name, 'vm')]",
"type": "String"
},
"location": {
"type": "string",
"defaultValue": "[resourceGroup().location]",
"metadata": {
"description": "Location for all resources."
}
},
"dataCollectionRulesName": {
"defaultValue": "[concat(resourceGroup().name, 'DCR')]",
"type": "String",
"metadata": {
"description": "Data Collection Rule Name"
}
},
"dcraName": {
"type": "string",
"defaultValue": "[concat(uniquestring(resourceGroup().id), 'DCRLink')]",
"metadata": {
"description": "Name of the association."
}
},
"identityName": {
"type": "string",
"defaultValue": "[concat(resourceGroup().name, 'UAI')]",
"metadata": {
"description": "Managed Identity"
}
}
},
"resources": [
{
"type": "Microsoft.Compute/virtualMachines/providers/dataCollectionRuleAssociations",
"name": "[concat(parameters('vmName'),'/microsoft.insights/', parameters('dcraName'))]",
"apiVersion": "2021-04-01",
"properties": {
"description": "Association of data collection rule. Deleting this association will break the data collection for this virtual machine.",
"dataCollectionRuleId": "[resourceID('Microsoft.Insights/dataCollectionRules',parameters('dataCollectionRulesName'))]"
}
},
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(parameters('vmName'), '/AMAExtension')]",
"apiVersion": "2020-06-01",
"location": "[parameters('location')]",
"dependsOn": [
"[resourceId('Microsoft.Compute/virtualMachines/providers/dataCollectionRuleAssociations', parameters('vmName'), 'Microsoft.Insights', parameters('dcraName'))]"
],
"properties": {
"publisher": "Microsoft.Azure.Monitor",
"type": "AzureMonitorWindowsAgent",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion": true,
"settings": {
"authentication": {
"managedIdentity": {
"identifier-name": "mi_res_id",
"identifier-value": "[resourceID('Microsoft.ManagedIdentity/userAssignedIdentities/',parameters('identityName'))]"
}
}
}
}
}
]
}
Migrering från Azure Diagnostic Extensions för Linux och Windows (LAD/WAD)
Azure Diagnostics-tillägget skickar för närvarande data till Event Hubs och lagring men kommer att bli inaktuell den 31 mars 2026. Efter det här datumet kommer Microsoft inte längre att tillhandahålla stöd för Azure Diagnostics-tillägget. Endast säkerhetskorrigeringar tillhandahålls. Azure Monitor Agent (AMA) är ett mer effektivt och flexibelt sätt att samla in klientdata från virtuella datorer.
- Om du vill kontrollera vilka tillägg som är installerade på den virtuella datorn väljer du Tillägg + program under Inställningar på den virtuella datorn.
- Ta bort LAD eller WAD när du har konfigurerat Azure Monitor Agent för att samla in samma data till Event Hubs eller Azure Storage för att undvika dubbletter av data.
Felsöka
Om data inte skickas till Event Hubs eller lagring kontrollerar du följande:
- Lämplig inbyggd roll som anges i Behörigheter tilldelas med hanterad identitet på lagringskontot eller händelsehubben.
- Hanterad identitet tilldelas till den virtuella datorn.
- AMA-inställningarna har en hanterad identitetsparameter.
Se även
- Mer information om hur du skapar en datainsamlingsregel finns i Samla in data från virtuella datorer med Hjälp av Azure Monitor Agent.