Freigeben über


Sammeln von IIS-Protokollen mit dem Azure Monitor-Agent

IIS-Protokolle sind eine der Datenquellen, die in einer Datensammlungsregel (Data Collection Rule, DCR) verwendet werden. Details zur Erstellung der DCR finden Sie unter Sammeln von Daten mit dem Azure Monitor-Agent. Dieser Artikel enthält weitere Details zum Datenquellentyp für Windows-Ereignisse.

Internetinformationsdienste (Internet Information Services, IIS) speichern Benutzeraktivitäten in Protokolldateien, die vom Log Analytics-Agent gesammelt und an einen Log Analytics-Arbeitsbereich gesendet werden können.

Voraussetzungen

Konfigurieren der Sammlung von IIS-Protokollen auf dem Client

Bevor Sie IIS-Protokolle vom Computer erfassen können, müssen Sie sicherstellen, dass die IIS-Protokollierung aktiviert und ordnungsgemäß konfiguriert ist.

  • Die IIS-Protokolldatei muss im W3C-Format vorliegen und auf dem lokalen Laufwerk des Computers gespeichert sein, auf dem der Agent ausgeführt wird.
  • Jeder Eintrag in der Protokolldatei muss mit einem Zeilenende versehen sein.
  • Die Protokolldatei darf keine Zirkelprotokollierung verwenden, wodurch alte Einträge überschrieben werden.
  • Die Protokolldatei darf keine Umbenennungen vornehmen, bei denen eine Datei verschoben wird und eine neue Datei mit demselben Namen geöffnet wird.

Der Standardspeicherort für IIS-Protokolldateien lautet wie folgt: C:\inetpub\logs\LogFiles\W3SVC1. Stellen Sie sicher, dass Protokolldateien in diesen Speicherort geschrieben werden, oder überprüfen Sie Ihre IIS-Konfiguration, um einen alternativen Speicherort zu identifizieren. Überprüfen Sie die Zeitstempel der Protokolldateien, um sicherzustellen, dass sie neu sind.

Screenshot: Dialogfeld zur Konfiguration der IIS-Protokollierung auf Agent-Computer

Konfigurieren der IIS-Protokolldatenquelle

Erstellen Sie wie unter Sammeln von Daten mit dem Azure Monitor-Agent beschrieben eine Datensammlungsregel. Wählen Sie im Schritt Sammeln und übermitteln die Option IIS-Protokolle aus der Dropdownliste Datenquellentyp aus. Sie müssen nur ein Dateimuster angeben, um das Verzeichnis zu identifizieren, in dem sich die Protokolldateien befinden, wenn sie an einem anderen Speicherort als in IIS konfiguriert sind. In den meisten Fällen können Sie diesen Wert leer lassen.

Screenshot: Formular im Azure-Portal zum Auswählen grundlegender Leistungsindikatoren in einer Datenerfassungsregel.

Destinations

IIS-Protokolldaten können an die folgenden Speicherorte gesendet werden.

Destination Tabelle/Namespace
Log Analytics-Arbeitsbereich W3CIISLog

Beispiel für IIS-Protokollabfragen

  • Zählen Sie die IIS-Protokolleinträge nach URL für den Host www.contoso.com.

    W3CIISLog 
    | where csHost=="www.contoso.com" 
    | summarize count() by csUriStem
    
  • Überprüfen Sie die Gesamtanzahl der von jedem IIS-Computer empfangenen Bytes.

    W3CIISLog 
    | summarize sum(csBytes) by Computer
    
  • Identifizieren Sie Datensätze mit dem Rückgabestatus 500.

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

Hinweis

Das benutzerdefinierte Feld „X-Forwarded-For“ wird zurzeit nicht unterstützt. Wenn dies ein kritisches Feld ist, können Sie die IIS-Protokolle als benutzerdefiniertes Textprotokoll sammeln.

Problembehandlung

Führen Sie die folgenden Schritte aus, wenn Sie nicht die erwarteten Daten aus dem JSON-Protokoll sammeln.

  • Stellen Sie sicher, dass IIS-Protokolle an dem von Ihnen angegebenen Speicherort erstellt werden.
  • Stellen Sie sicher, dass IIS-Protokolle so konfiguriert sind, dass sie das W3C-Format aufweisen.
  • Unter Vorgang überprüfen können Sie überprüfen, ob der Agent funktioniert und Daten empfangen werden.

Nächste Schritte

Weitere Informationen: