Självstudie: Lägga till en transformering i en datainsamlingsregel för arbetsytor med hjälp av Azure Portal

Den här självstudien beskriver hur du konfigurerar en exempeltransformering i en regel för datainsamling på arbetsytan (DCR) med hjälp av Azure Portal. Med transformeringar i Azure Monitor kan du filtrera eller ändra inkommande data innan de skickas till målet. Omvandlingar av arbetsytor ger stöd för inmatningstidstransformeringar för arbetsflöden som ännu inte använder Azure Monitor-datainmatningspipelinen.

Omvandlingar av arbetsytor lagras tillsammans i en enda DCR för arbetsytan, som kallas för arbetsytans DCR. Varje transformering är associerad med en viss tabell. Omvandlingen tillämpas på alla data som skickas till den här tabellen från alla arbetsflöden som inte använder en DCR.

Kommentar

I den här självstudien används Azure Portal för att konfigurera en omvandling av arbetsytor. Samma självstudiekurs med Hjälp av Azure Resource Manager-mallar och REST API finns i Självstudie: Lägga till transformering i datainsamlingsregeln för arbetsytor till Azure Monitor med hjälp av resource manager-mallar.

I den här självstudien lär du dig att:

  • Konfigurera en arbetsytetransformering för en tabell på en Log Analytics-arbetsyta.
  • Skriv en loggfråga för en arbetsytetransformering.

Förutsättningar

För att slutföra självstudierna behöver du:

Översikt över självstudien

I den här självstudien minskar du lagringskravet LAQueryLogs för tabellen genom att filtrera bort vissa poster. Du tar också bort innehållet i en kolumn när du parsar kolumndata för att lagra en datadel i en anpassad kolumn. LaQueryLogs-tabellen skapas när du aktiverar loggfrågegranskning på en arbetsyta. Du kan använda samma grundläggande process för att skapa en transformering för alla tabeller som stöds på en Log Analytics-arbetsyta.

I den här självstudien används Azure Portal, som innehåller en guide som vägleder dig genom processen att skapa en inmatningstidsomvandling. När du har slutfört stegen ser du att guiden:

  • Uppdaterar tabellschemat med andra kolumner från frågan.
  • Skapar en WorkspaceTransforms DCR och länkar den till arbetsytan om en standard-DCR inte redan är länkad till arbetsytan.
  • Skapar en inmatningstidstransformering och lägger till den i DCR.

Aktivera granskningsloggar för frågor

Du måste aktivera frågegranskning för din arbetsyta för att skapa den LAQueryLogs tabell som du ska arbeta med. Det här steget krävs inte för alla inmatningstidstransformeringar. Det är bara för att generera exempeldata som vi kommer att arbeta med.

  1. På menyn Log Analytics-arbetsytor i Azure Portal väljer du Diagnostikinställningar>Lägg till diagnostikinställning.

    Skärmbild som visar diagnostikinställningar.

  2. Ange ett namn för diagnostikinställningen. Välj arbetsytan så att granskningsdata lagras på samma arbetsyta. Välj kategorin Granskning och välj sedan Spara för att spara diagnostikinställningen och stäng sidan Diagnostikinställning.

    Skärmbild som visar den nya diagnostikinställningen.

  3. Välj Loggar och kör sedan några frågor för att fylla LAQueryLogs i med vissa data. Dessa frågor behöver inte returnera data som ska läggas till i granskningsloggen.

    Skärmbild som visar exempelloggfrågor.

Lägga till en transformering i tabellen

Nu när tabellen har skapats kan du skapa omvandlingen för den.

  1. På menyn Log Analytics-arbetsytor i Azure Portal väljer du Tabeller. Leta upp tabellen LAQueryLogs och välj Skapa transformering.

    Skärmbild som visar hur du skapar en ny transformering.

  2. Eftersom den här omvandlingen är den första på arbetsytan måste du skapa en DCR för arbetsytetransformering. Om du skapar transformeringar för andra tabeller på samma arbetsyta lagras de i samma DCR. Välj Skapa en ny regel för datainsamling. Prenumerationen och resursgruppen kommer redan att fyllas i för arbetsytan. Ange ett namn för DCR och välj Klar.

    Skärmbild som visar hur du skapar en ny regel för datainsamling.

  3. Välj Nästa för att visa exempeldata från tabellen. När du definierar omvandlingen tillämpas resultatet på exempeldata. Därför kan du utvärdera resultatet innan du tillämpar det på faktiska data. Välj Transformeringsredigeraren för att definiera omvandlingen.

    Skärmbild som visar exempeldata från loggtabellen.

  4. I transformeringsredigeraren kan du se den transformering som kommer att tillämpas på data innan den matas in i tabellen. Inkommande data representeras av en virtuell tabell med namnet source, som har samma uppsättning kolumner som själva måltabellen. Transformeringen innehåller inledningsvis en enkel fråga som returnerar source tabellen utan ändringar.

  5. Ändra frågan till följande exempel:

    source
    | where QueryText !contains 'LAQueryLogs'
    | extend Context = parse_json(RequestContext)
    | extend Workspace_CF = tostring(Context['workspaces'][0])
    | project-away RequestContext, Context
    

    Ändringen gör följande ändringar:

    • Rader som rör frågor LAQueryLogs mot själva tabellen togs bort för att spara utrymme eftersom dessa loggposter inte är användbara.
    • En kolumn för namnet på arbetsytan som efterfrågades lades till.
    • Data från RequestContext kolumnen togs bort för att spara utrymme.

    Kommentar

    Med hjälp av Azure Portal initierar utdata från omvandlingen ändringar i tabellschemat om det behövs. Kolumner läggs till för att matcha transformeringsutdata om de inte redan finns. Kontrollera att dina utdata inte innehåller några kolumner som du inte vill lägga till i tabellen. Om utdata inte innehåller kolumner som redan finns i tabellen tas inte dessa kolumner bort, men data läggs inte till.

    Alla anpassade kolumner som läggs till i en inbyggd tabell måste sluta i _CF. Kolumner som läggs till i en anpassad tabell behöver inte ha det här suffixet. En anpassad tabell har ett namn som slutar i _CL.

  6. Kopiera frågan till transformeringsredigeraren och välj Kör för att visa resultat från exempeldata. Du kan kontrollera att den nya Workspace_CF kolumnen finns i frågan.

    Skärmbild som visar transformeringsredigeraren.

  7. Välj Använd för att spara omvandlingen och välj sedan Nästa för att granska konfigurationen. Välj Skapa för att uppdatera DCR med den nya transformeringen.

    Skärmbild som visar hur du sparar omvandlingen.

Testa omvandlingen

Tillåt cirka 30 minuter innan omvandlingen börjar gälla och testa den sedan genom att köra en fråga mot tabellen. Endast data som skickas till tabellen efter att omvandlingen har tillämpats påverkas.

I den här självstudien kör du några exempelfrågor för att skicka data till LAQueryLogs tabellen. Inkludera några frågor mot LAQueryLogs så att du kan kontrollera att omvandlingen filtrerar dessa poster. Nu har utdata den nya Workspace_CF kolumnen och det finns inga poster för LAQueryLogs.

Felsökning

I det här avsnittet beskrivs olika feltillstånd som du kan få och hur du korrigerar dem.

IntelliSense i Log Analytics känner inte igen nya kolumner i tabellen

Cacheminnet som driver IntelliSense kan ta upp till 24 timmar att uppdatera.

Transformering i en dynamisk kolumn fungerar inte

Ett känt problem påverkar för närvarande dynamiska kolumner. En tillfällig lösning är att uttryckligen parsa dynamiska kolumndata med hjälp parse_json() av innan du utför några åtgärder mot dem.

Nästa steg