Samla in IIS-loggar med Azure Monitor-agenten

IIS (Internet Information Service) loggar data till den lokala disken för Windows-datorer. Den här artikeln beskriver hur du samlar in IIS-loggar från övervakade datorer med Azure Monitor Agent genom att skapa en datainsamlingsregel (DCR).

Förutsättningar

För att slutföra den här proceduren behöver du:

Skapa datainsamlingsregel för att samla in IIS-loggar

Datainsamlingsregeln definierar:

  • Vilka källloggfiler Azure Monitor Agent söker efter nya händelser.
  • Hur Azure Monitor transformerar händelser under inmatning.
  • Log Analytics-målarbetsytan och tabellen som Azure Monitor skickar data till.

Du kan definiera en datainsamlingsregel för att skicka data från flera datorer till flera Log Analytics-arbetsytor, inklusive arbetsytor i en annan region eller klientorganisation. Skapa datainsamlingsregeln i samma region som din Analytics-arbetsyta.

Kommentar

Om du vill skicka data mellan klienter måste du först aktivera Azure Lighthouse.

Så här skapar du datainsamlingsregeln i Azure-portalen:

  1. På menyn Övervaka väljer du Regler för datainsamling.

  2. Välj Skapa för att skapa en ny regel och associationer för datainsamling.

    Skärmbild som visar knappen Skapa på skärmen Datainsamlingsregler.

  3. Ange ett regelnamn och ange en slutpunkt för prenumeration, resursgrupp, region, plattformstyp och datainsamling:

    • Region anger var DCR ska skapas. De virtuella datorerna och deras associationer kan finnas i valfri prenumeration eller resursgrupp i klientorganisationen.
    • Plattformstyp anger vilken typ av resurser som den här regeln kan tillämpas på. Alternativet Anpassad tillåter både Windows- och Linux-typer.
    • Slutpunkten för datainsamling anger den datainsamlingsslutpunkt som används för att samla in data. Den här datainsamlingsslutpunkten måste finnas i samma region som Log Analytics-arbetsytan. Mer information finns i Konfigurera datainsamlingsslutpunkter baserat på din distribution.

    Skärmbild som visar fliken Grundläggande på skärmen Datainsamlingsregel.

  4. På fliken Resurser :

    1. Välj + Lägg till resurser och associera resurser med datainsamlingsregeln. Resurser kan vara virtuella datorer, VM-skalningsuppsättningar och Azure Arc för servrar. Azure-portalen installerar Azure Monitor Agent på resurser som inte redan har den installerad.

      Viktigt!

      Portalen aktiverar systemtilldelad hanterad identitet på målresurserna, tillsammans med befintliga användartilldelade identiteter, om det finns några. För befintliga program, såvida du inte anger den användartilldelade identiteten i begäran, använder datorn som standard systemtilldelad identitet i stället.

    2. Välj Aktivera slutpunkter för datainsamling.

    3. Välj en datainsamlingsslutpunkt för var och en av de virtuella datorer som associeras med datainsamlingsregeln.

      Den här datainsamlingsslutpunkten skickar konfigurationsfiler till den virtuella datorn och måste finnas i samma region som den virtuella datorn. Mer information finns i Konfigurera datainsamlingsslutpunkter baserat på din distribution.

    Skärmbild som visar fliken Resurser på skärmen Datainsamlingsregel.

  5. På fliken Samla in och leverera väljer du Lägg till datakälla för att lägga till en datakälla och ange ett mål.

  6. Välj IIS-loggar.

    Skärmbild som visar formuläret i Azure-portalen för att välja grundläggande prestandaräknare i en datainsamlingsregel.

  7. Ange ett filmönster för att identifiera katalogen där loggfilerna finns.

  8. På fliken Mål lägger du till ett mål för datakällan.

    Skärmbild som visar azure-portalformuläret för att lägga till en datakälla i en datainsamlingsregel.

  9. Välj Granska + skapa för att granska informationen om datainsamlingsregeln och associationen med uppsättningen virtuella datorer.

  10. Välj Skapa för att skapa datainsamlingsregeln.

Kommentar

Det kan ta upp till 5 minuter innan data skickas till målen när du har skapat datainsamlingsregeln.

Exempelloggfrågor

  • Räkna IIS-loggposterna efter URL för värden www.contoso.com.

    W3CIISLog 
    | where csHost=="www.contoso.com" 
    | summarize count() by csUriStem
    
  • Granska de totala byte som tas emot av varje IIS-dator.

    W3CIISLog 
    | summarize sum(csBytes) by Computer
    

Exempel på aviseringsregel

  • Skapa en aviseringsregel för alla poster med returstatusen 500.

    W3CIISLog 
    | where scStatus==500
    | summarize AggregatedValue = count() by Computer, bin(TimeGenerated, 15m)
    

Felsöka

Använd följande steg för att felsöka insamling av IIS-loggar.

Kontrollera om några IIS-loggar har tagits emot

Börja med att kontrollera om några poster har samlats in för dina IIS-loggar genom att köra följande fråga i Log Analytics. Om frågan inte returnerar poster kontrollerar du de andra avsnitten efter möjliga orsaker. Den här frågan söker efter hela under de senaste två dagarna, men du kan ändra för ett annat tidsintervall.

W3CIISLog
| where TimeGenerated > ago(48h)
| order by TimeGenerated desc

Kontrollera att agenten skickar pulsslag

Kontrollera att Azure Monitor-agenten kommunicerar korrekt genom att köra följande fråga i Log Analytics för att kontrollera om det finns några poster i tabellen Heartbeat.

Heartbeat
| where TimeGenerated > ago(24h)
| where Computer has "<computer name>"
| project TimeGenerated, Category, Version
| order by TimeGenerated desc

Kontrollera att IIS-loggar skapas

Titta på tidsstämplarna för loggfilerna och öppna det senaste för att se att de senaste tidsstämplarna finns i loggfilerna. Standardplatsen för IIS-loggfiler är C:\inetpub\logs\LogFiles\W3SVC1.

Skärmbild av en IIS-logg som visar tidsstämpeln.

Kontrollera att du har angett rätt loggplats i datainsamlingsregeln

Datainsamlingsregeln har ett avsnitt som liknar följande. Elementet logDirectories anger sökvägen till loggfilen som ska samlas in från agentdatorn. Kontrollera agentdatorn för att kontrollera att detta är korrekt.

    "dataSources": [
    {
            "configuration": {
                "logDirectories": ["C:\\scratch\\demo\\W3SVC1"]
            },
            "id": "myIisLogsDataSource",
            "kind": "iisLog",
            "streams": [{
                    "stream": "ONPREM_IIS_BLOB_V2"
                }
            ],
            "sendToChannels": ["gigl-dce-6a8e34db54bb4b6db22d99d86314eaee"]
        }
    ]

Den här katalogen ska motsvara platsen för IIS-loggarna på agentdatorn.

Skärmbild av IIS-loggfiler på agentdatorn.

Kontrollera att IIS-loggarna är W3C-formaterade

Öppna IIS-hanteraren och kontrollera att loggarna skrivs i W3C-format.

Skärmbild av dialogrutan konfiguration av IIS-loggning på agentdatorn.

Öppna IIS-loggfilen på agentdatorn för att kontrollera att loggarna är i W3C-format.

Skärmbild av en IIS-logg som visar rubriken, som anger att filen är i W3C-format.

Kommentar

Det anpassade fältet X-Forwarded-For stöds inte just nu. Om det här är ett kritiskt fält kan du samla in IIS-loggarna som en anpassad textlogg.

Nästa steg

Läs mer om: