Strukturen för en datainsamlingsregel i Azure Monitor

Regler för datainsamling (DCR) är uppsättningar med instruktioner som bestämmer hur du samlar in och bearbetar telemetri som skickas till Azure Monitor. Vissa domänkontrollanter skapas och hanteras av Azure Monitor. Den här artikeln beskriver JSON-strukturen för DCR:er för att skapa och redigera dem i de fall där du behöver arbeta med dem direkt.

Egenskaper

I följande tabell beskrivs egenskaper på den översta nivån i DCR.

Property beskrivning
description Valfri beskrivning av datainsamlingsregeln som definierats av användaren.
dataCollectionEndpointId Resurs-ID för den datainsamlingsslutpunkt (DCE) som används av DCR om du angav en när DCR skapades. Den här egenskapen finns inte i DCR:er som inte använder en DCE.
endpoints1 Innehåller logsIngestion metricsIngestion och URL:en för slutpunkterna för DCR. Det här avsnittet och dess egenskaper skapas automatiskt när DCR endast skapas om kind attributet i DCR är Direct.
immutableId En unik identifierare för datainsamlingsregeln. Den här egenskapen och dess värde skapas automatiskt när DCR skapas.
kind Anger det datainsamlingsscenario som DCR används för. Den här parametern beskrivs ytterligare nedan.

1Den här egenskapen skapades inte för DCR:er som skapades före den 31 mars 2024. DCR:er som skapades före det här datumet krävde att en datainsamlingsslutpunkt (DCE) och egenskapen dataCollectionEndpointId skulle anges. Om du vill använda dessa inbäddade domänkontrollanter måste du skapa en ny DCR.

Variant

Egenskapen kind i DCR anger vilken typ av samling som DCR används för. Varje typ av DCR har olika struktur och egenskaper.

I följande tabell visas de olika typerna av domänkontrollanter och deras information.

Variant beskrivning
Direct Direkt inmatning med hjälp av API för logginmatning. Slutpunkter skapas endast för DCR om det här typvärdet används.
AgentDirectToStore Skicka insamlade data till Azure Storage och Event Hubs.
AgentSettings Konfigurera Azure Monitor-agentparametrar.
Linux Samla in händelser och prestandadata från Linux-datorer.
PlatformTelemetry Exportera plattformsmått.
Windows Samla in händelser och prestandadata från Windows-datorer.
WorkspaceTransforms DCR för arbetsytetransformering. Den här domänkontrollanten innehåller ingen indataström.

Översikt över DCR-dataflöde

Det grundläggande flödet för en DCR visas i följande diagram. Var och en av komponenterna beskrivs i följande avsnitt.

Diagram som illustrerar relationen mellan de olika avsnitten i en DCR.

Indataströmmar

Avsnittet indataström i en DCR definierar inkommande data som samlas in. Det finns två typer av inkommande dataström beroende på det specifika datainsamlingsscenariot. De flesta scenarier för datainsamling använder en av indataströmmarna, medan vissa kan använda båda.

Kommentar

DcR:er för arbetsytetransformering har ingen indataström.

Indataström beskrivning
dataSources Känd typ av data. Detta är ofta data som bearbetas av Azure Monitor-agenten och levereras till Azure Monitor med hjälp av en känd datatyp.
streamDeclarations Anpassade data som måste definieras i DCR.

Data som skickas från API:et för logginmatning använder ett streamDeclaration med schemat för inkommande data. Det beror på att API:et skickar anpassade data som kan ha valfritt schema.

Textloggar från AMA är ett exempel på datainsamling som kräver både dataSources och streamDeclarations. Datakällan innehåller konfigurationen

Datakällor

Datakällor är unika källor för övervakning av data som var och en har sitt eget format och sin metod för att exponera sina data. Varje datakälla har en unik uppsättning parametrar som måste konfigureras för varje datakälla. Data som returneras av datakällan är vanligtvis en känd typ, så schemat behöver inte definieras i DCR.

Händelser och prestandadata som samlas in från en virtuell dator med Azure Monitor-agenten (AMA) använder till exempel datakällor som windowsEventLogs och performanceCounters. Du anger kriterier för de händelser och prestandaräknare som du vill samla in, men du behöver inte definiera själva datastrukturen eftersom det här är ett känt schema för potentiella inkommande data.

Gemensamma parametrar

Alla typer av datakällor har följande gemensamma parametrar.

Parameter Description
name Namn för att identifiera datakällan i DCR.
streams Lista över strömmar som datakällan samlar in. Om det här är en standarddatatyp, till exempel en Windows-händelse, kommer dataströmmen att vara i formuläret Microsoft-<TableName>. Om det är en anpassad typ kommer den att vara i formuläret Custom-<TableName>

Giltiga typer av datakällor

De tillgängliga datakällans typer visas i följande tabell.

Typ av datakälla beskrivning Strömmar Parametrar
eventHub Data från Azure Event Hubs. Anpassad1 consumerGroup – Konsumentgrupp av händelsehubb att samla in från.
iisLogs IIS-loggar från Windows-datorer Microsoft-W3CIISLog logDirectories – Katalog där IIS-loggar lagras på klienten.
logFiles Text- eller json-loggning på en virtuell dator Anpassad1 filePatterns – Mapp- och filmönster för loggfiler som ska samlas in från klienten.
format - json eller text
performanceCounters Prestandaräknare för både virtuella Windows- och Linux-datorer Microsoft-Perf
Microsoft-InsightsMetrics
samplingFrequencyInSeconds – Frekvens som prestandadata ska samplas om.
counterSpecifiers - Objekt och räknare som ska samlas in.
prometheusForwarder Prometheus-data som samlas in från Kubernetes-kluster. Microsoft-PrometheusMetrics streams – Strömmar att samla in
labelIncludeFilter – Lista över etikettinkluderingsfilter som namn/värde-par. För närvarande stöds endast "microsoft_metrics_include_label".
syslog Syslog-händelser på virtuella Linux-datorer Microsoft-Syslog facilityNames - Anläggningar att samla in
logLevels – Loggnivåer att samla in
windowsEventLogs Windows-händelselogg på virtuella datorer Microsoft-Event xPathQueries – XPaths som anger villkoret för de händelser som ska samlas in.
extension Tilläggsbaserad datakälla som används av Azure Monitor-agenten. Varierar beroende på tillägg extensionName - Namnet på tillägget
extensionSettings – Värden för varje inställning som krävs av tillägget

1 Dessa datakällor använder både en datakälla och en strömdeklaration eftersom schemat för de data som de samlar in kan variera. Dataströmmen som används i datakällan ska vara den anpassade ström som definieras i strömdeklarationen.

Stream-deklarationer

Deklaration av de olika typerna av data som skickas till Log Analytics-arbetsytan. Varje ström är ett objekt vars nyckel representerar strömnamnet, som måste börja med Custom-. Strömmen innehåller en fullständig lista över egenskaper på den översta nivån som finns i JSON-data som ska skickas. Formen på de data som du skickar till slutpunkten behöver inte matcha måltabellens. I stället måste utdata från den transformering som tillämpas ovanpå indata matcha målformen.

Datatyper

Möjliga datatyper som kan tilldelas egenskaperna är:

  • string
  • int
  • long
  • real
  • boolean
  • dynamic
  • datetime.

Destinationer

Avsnittet destinations innehåller en post för varje mål där data skickas. Dessa mål matchas med indataströmmar i avsnittet dataFlows .

Gemensamma parametrar

Parametrar beskrivning
name Namn för att identifiera målet i avsnittet dataSources .

Giltiga mål

De tillgängliga destinationerna visas i följande tabell.

Mål beskrivning Obligatoriska parametrar
logAnalytics Log Analytics-arbetsyta workspaceResourceId – Resurs-ID för arbetsytan.
workspaceID – ID för arbetsytan

Detta anger bara arbetsytan, inte tabellen där data ska skickas. Om det är ett känt mål behöver ingen tabell anges. För anpassade tabeller anges tabellen i datakällan.
azureMonitorMetrics Azure Monitor-mått Ingen konfiguration krävs eftersom det bara finns ett enda måttarkiv för prenumerationen.
storageTablesDirect Azure Table Storage storageAccountResourceId – Resurs-ID för lagringskontot
tableName - Tabellens namn
storageBlobsDirect Azure Blob Storage storageAccountResourceId – Resurs-ID för lagringskontot
containerName – Namnet på blobcontainern
eventHubsDirect Event Hubs eventHubsDirect – Resurs-ID för händelsehubben.

Viktigt!

En dataström kan bara skicka till en Log Analytics-arbetsyta i en DCR. Du kan ha flera dataFlow poster för en enda dataström om de använder olika tabeller på samma arbetsyta. Om du behöver skicka data till flera Log Analytics-arbetsytor från en enda dataström skapar du en separat DCR för varje arbetsyta.

Dataflöden

Dataflöden matchar indataströmmar med mål. Varje datakälla kan också ange en transformering och i vissa fall ange en specifik tabell på Log Analytics-arbetsytan.

Dataflödesegenskaper

Avsnitt beskrivning
streams En eller flera strömmar som definierats i avsnittet indataströmmar. Du kan inkludera flera strömmar i ett enda dataflöde om du vill skicka flera datakällor till samma mål. Använd endast en enda ström om dataflödet innehåller en transformering. En dataström kan också användas av flera dataflöden när du vill skicka en viss datakälla till flera tabeller på samma Log Analytics-arbetsyta.
destinations En eller flera mål från destinations avsnittet ovan. Flera mål tillåts för scenarier med flera värdar.
transformKql Valfri transformering som tillämpas på den inkommande strömmen. Omvandlingen måste förstå schemat för inkommande data och utdata i schemat för måltabellen. Om du använder en transformering bör dataflödet endast använda en enda ström.
outputStream Beskriver vilken tabell i arbetsytan som anges under egenskapen destination som data ska skickas till. Värdet outputStream för har formatet Microsoft-[tableName] när data matas in i en standardtabell eller Custom-[tableName] när data matas in i en anpassad tabell. Endast ett mål tillåts per dataström.

Den här egenskapen används inte för kända datakällor från Azure Monitor, till exempel händelser och prestandadata eftersom de skickas till fördefinierade tabeller.

Nästa steg

Översikt över regler och metoder för datainsamling för att skapa dem