Samla in textloggar med Log Analytics-agenten i Azure Monitor

Med datakällan Anpassade loggar för Log Analytics-agenten i Azure Monitor kan du samla in händelser från textfiler på både Windows- och Linux-datorer. Många program loggar information i textfiler i stället för standardloggningstjänster som Windows-händelseloggen eller Syslog. När data har samlats in kan du antingen parsa dem i enskilda fält i dina frågor eller extrahera dem under samlingen till enskilda fält.

Viktigt!

Den här artikeln beskriver hur du samlar in en textlogg med Log Analytics-agenten. Om du använder Azure Monitor-agenten kan du läsa Samla in textloggar med Azure Monitor Agent.

Viktigt!

Den äldre Log Analytics-agentenkommer att vara inaktuell i augusti 2024. Efter det här datumet kommer Microsoft inte längre att tillhandahålla någon support för Log Analytics-agenten. Migrera till Azure Monitor-agenten före augusti 2024 för att fortsätta mata in data.

Diagram that shows custom log collection.

Loggfilerna som ska samlas in måste matcha följande villkor:

  • Loggen måste antingen ha en enda post per rad eller använda en tidsstämpel som matchar något av följande format i början av varje post:

    ÅÅÅÅ-MM-DD HH:MM:SS
    M/D/ÅÅÅÅÅ HH:MM:SS AM/PM
    Mon DD, ÅÅÅÅÅ HH:MM:SS
    yyMMdd HH:mm:ss
    ddMMyy HH:mm:ss
    MMM d hh:mm:ss
    dd/MMM/åååå:HH:mm:ss zzz
    åååå-MM-ddTHH:mm:ssK

  • Loggfilen får inte tillåta cirkulär loggning. Det här beteendet är loggrotation där filen skrivs över med nya poster eller om filen har bytt namn och samma filnamn återanvänds för fortsatt loggning.

  • Loggfilen måste använda ASCII- eller UTF-8-kodning. Andra format som UTF-16 stöds inte.

  • För Linux stöds inte tidszonskonvertering för tidsstämplar i loggarna.

  • Som bästa praxis bör loggfilen innehålla datum och tid som den skapades för att förhindra att loggrotationen skrivs över eller byter namn.

Kommentar

Om det finns duplicerade poster i loggfilen samlar Azure Monitor in dem. Frågeresultaten som genereras är inkonsekventa. Filterresultaten visar fler händelser än resultatantalet. Du måste verifiera loggen för att avgöra om programmet som skapar den orsakar det här beteendet. Åtgärda problemet, om möjligt, innan du skapar definitionen för den anpassade loggsamlingen.

En Log Analytics-arbetsyta har stöd för följande begränsningar:

  • Endast 500 anpassade loggar kan skapas.
  • En tabell stöder endast upp till 500 kolumner.
  • Det maximala antalet tecken för kolumnnamnet är 500.

Viktigt!

Anpassad loggsamling kräver att programmet som skriver loggfilen rensar logginnehållet till disken med jämna mellanrum. Det beror på att den anpassade loggsamlingen förlitar sig på filsystemsändringsmeddelanden för loggfilen som spåras.

Definiera en anpassad loggtabell

Använd följande procedur för att definiera en anpassad loggtabell. Bläddra till slutet av den här artikeln för en genomgång av ett exempel på hur du lägger till en anpassad logg.

Öppna guiden Anpassad logg

Guiden Anpassad logg körs i Azure-portalen och gör att du kan definiera en ny anpassad logg att samla in.

  1. I Azure-portalen väljer du Log Analytics-arbetsytor som dina arbetsytetabeller>>.

  2. Välj Skapa och sedan Ny anpassad logg (MMA-baserad).

    Som standard skickas alla konfigurationsändringar automatiskt till alla agenter. För Linux-agenter skickas en konfigurationsfil till Fluentd-datainsamlaren.

Ladda upp och parsa en exempellogg

Börja genom att ladda upp ett exempel på den anpassade loggen. Guiden parsar och visar posterna i den här filen som du kan verifiera. Azure Monitor använder avgränsare som du anger för att identifiera varje post.

Ny rad är standardgränsare och används för loggfiler som har en enda post per rad. Om raden börjar med ett datum och en tid i något av de tillgängliga formaten kan du ange en tidsstämpelavgränsare som stöder poster som sträcker sig över mer än en rad.

Om en tidsstämpelavgränsare används fylls egenskapen TimeGenerated för varje post som lagras i Azure Monitor med det datum och den tid som angetts för posten i loggfilen. Om en ny radgränsare används fylls TimeGenerated i med datum och tid när Azure Monitor samlade in posten.

  1. Välj Bläddra och bläddra till en exempelfil. Den här knappen kan vara märkt Välj fil i vissa webbläsare.

  2. Välj Nästa.

    Guiden Anpassad logg laddar upp filen och visar de poster som den identifierar.

  3. Ändra avgränsare som används för att identifiera en ny post. Välj den avgränsare som bäst identifierar posterna i loggfilen.

  4. Välj Nästa.

Lägga till sökvägar för loggsamling

Du måste definiera en eller flera sökvägar på agenten där den kan hitta den anpassade loggen. Du kan antingen ange en specifik sökväg och ett namn för loggfilen eller ange en sökväg med ett jokertecken för namnet. Det här steget stöder program som skapar en ny fil varje dag eller när en fil når en viss storlek. Du kan också ange flera sökvägar för en enda loggfil.

Ett program kan till exempel skapa en loggfil varje dag med det datum som ingår i namnet som i log20100316.txt. Ett mönster för en sådan logg kan vara log*.txt, som skulle gälla för alla loggfiler som följer programmets namngivningsschema.

Följande tabell innehåller exempel på giltiga mönster för att ange olika loggfiler.

Description Sökväg
Alla filer i C:\Logs med .txt-tillägget på Windows-agenten C:\Logs\*.txt
Alla filer i C:\Loggar med ett namn som börjar med loggen och ett .txt-tillägg på Windows-agenten C:\Logs\log*.txt
Alla filer i /var/log/audit med .txt-tillägget på Linux-agenten /var/log/audit/*.txt
Alla filer i /var/log/audit med ett namn som börjar med loggen och ett .txt-tillägg på Linux-agenten /var/log/audit/log*.txt
  1. Välj Windows eller Linux för att ange vilket sökvägsformat du lägger till.
  2. Ange sökvägen och välj + knappen.
  3. Upprepa processen för fler sökvägar.

Ange ett namn och en beskrivning för loggen

Namnet som du anger används för loggtypen enligt beskrivningen. Det slutar alltid med _CL för att särskilja den som en anpassad logg.

  1. Ange ett namn för loggen. Suffixet _CL tillhandahålls automatiskt.
  2. Lägg till en valfri beskrivning.
  3. Välj Nästa för att spara den anpassade loggdefinitionen.

Kontrollera att de anpassade loggarna samlas in

Det kan ta upp till en timme innan de första data från en ny anpassad logg visas i Azure Monitor. Azure Monitor börjar samla in poster från loggarna som finns i sökvägen som du angav från den punkt där du definierade den anpassade loggen. Den behåller inte de poster som du laddade upp när den anpassade loggen skapades. Den samlar in redan befintliga poster i loggfilerna som den hittar.

När Azure Monitor börjar samla in från den anpassade loggen blir dess poster tillgängliga med en loggfråga. Använd det namn som du gav den anpassade loggen som typ i din fråga.

Kommentar

Om egenskapen RawData saknas i frågan kan du behöva stänga och öppna webbläsaren igen.

Parsa de anpassade loggposterna

Hela loggposten lagras i en enda egenskap som heter RawData. Du vill förmodligen avgränsa de olika informationsdelarna i varje post i enskilda egenskaper för varje post. Alternativ för att parsa RawData i flera egenskaper finns i Parsa textdata i Azure Monitor.

Ta bort en anpassad loggtabell

Se Ta bort en tabell.

Datainsamling

Azure Monitor samlar in nya poster från varje anpassad logg ungefär var femte minut. Agenten registrerar sin plats i varje loggfil som den samlar in från. Om agenten går offline under en viss tid samlar Azure Monitor in poster där den senast slutade, även om dessa poster skapades när agenten var offline.

Hela innehållet i loggposten skrivs till en enda egenskap med namnet RawData. Metoder för att parsa varje importerad loggpost i flera egenskaper finns i Parsa textdata i Azure Monitor.

Egenskaper för anpassad loggpost

Anpassade loggposter har en typ med det loggnamn som du anger och egenskaperna i följande tabell.

Property Beskrivning
TimeGenerated Datum och tid då posten samlades in av Azure Monitor. Om loggen använder en tidsbaserad avgränsare är det den tid som samlas in från posten.
SourceSystem Typ av agent som posten samlades in från.
OpsManager – Windows-agent, antingen direktanslutning eller System Center Operations Manager
Linux – alla Linux-agenter
RawData Fullständig text för den insamlade posten. Du vill förmodligen parsa dessa data i enskilda egenskaper.
ManagementGroupName Namnet på hanteringsgruppen för System Center Operations Manager-agenter. För andra agenter är det här namnet AOI-arbetsyte-ID<>.

Exempelgenomgång för att lägga till en anpassad logg

I följande avsnitt går vi igenom ett exempel på hur du skapar en anpassad logg. Exempelloggen som samlas in har en enda post på varje rad som börjar med ett datum och en tid och sedan kommaavgränsade fält för kod, status och meddelande. Flera exempelposter visas.

2019-08-27 01:34:36 207,Success,Client 05a26a97-272a-4bc9-8f64-269d154b0e39 connected
2019-08-27 01:33:33 208,Warning,Client ec53d95c-1c88-41ae-8174-92104212de5d disconnected
2019-08-27 01:35:44 209,Success,Transaction 10d65890-b003-48f8-9cfc-9c74b51189c8 succeeded
2019-08-27 01:38:22 302,Error,Application could not connect to database
2019-08-27 01:31:34 303,Error,Application lost connection to database

Ladda upp och parsa en exempellogg

Vi tillhandahåller en av loggfilerna och kan se de händelser som den kommer att samla in. I det här fallet är Ny rad en tillräcklig avgränsare. Om en enskild post i loggen kan sträcka sig över flera rader måste dock en tidsstämpelavgränsare användas.

Screenshot that shows uploading and parsing a sample log.

Lägga till sökvägar för loggsamling

Loggfilerna finns i C:\MyApp\Logs. En ny fil skapas varje dag med ett namn som innehåller datumet i mönsterappenYYYYMMDD.log. Ett tillräckligt mönster för den här loggen skulle vara C:\MyApp\Logs\*.log.

Screenshot that shows adding a log collection path.

Ange ett namn och en beskrivning för loggen

Vi använder ett namn på MyApp_CL och skriver in en Beskrivning.

Screenshot that shows adding a log name.

Kontrollera att de anpassade loggarna samlas in

Vi använder en enkel fråga med MyApp_CL för att returnera alla poster från den insamlade loggen.

Screenshot that shows a log query with no custom fields.

Alternativ till anpassade loggar

Anpassade loggar är användbara om dina data passar de angivna kriterierna, men det finns fall där du behöver en annan strategi:

  • Data passar inte den nödvändiga strukturen, till exempel att ha tidsstämpeln i ett annat format.
  • Loggfilen följer inte kraven, till exempel filkodning eller en mappstruktur som inte stöds.
  • Data kräver förbearbetning eller filtrering före insamling.

I de fall där dina data inte kan samlas in med anpassade loggar bör du överväga följande alternativa strategier:

Nästa steg

  • Se Parsa textdata i Azure Monitor för metoder för att parsa varje importerad loggpost i flera egenskaper.
  • Lär dig mer om loggfrågor för att analysera data som samlas in från datakällor och lösningar.