Sammeln von IIS-Protokollen mit dem Azure Monitor-Agent
Der Internetinformationsdienst (IIS) protokolliert Daten auf dem lokalen Datenträger von Windows-Computern. In diesem Artikel wird erläutert, wie Sie mithilfe des Azure Monitor-Agents IIS-Protokolle von überwachten Computern sammeln, indem Sie eine Datensammlungsregel erstellen.
Voraussetzungen
Um dieses Verfahren abschließen zu können, benötigen Sie Folgendes:
Log Analytics-Arbeitsbereich, in dem Sie mindestens über die Berechtigung „Mitwirkender“ verfügen.
Ein oder zwei Datensammlungsendpunkte, je nachdem, ob sich Ihr virtueller Computer und der Log Analytics-Arbeitsbereich in derselben Region befinden.
Weitere Informationen finden Sie unter Einrichten von Datensammlungsendpunkten basierend auf Ihrer Bereitstellung.
Berechtigungen zum Erstellen von Datensammlungsregel-Objekten im Arbeitsbereich.
Eine VM, eine VM-Skalierungsgruppe oder einen lokalen Arc-fähigen Server, auf dem IIS ausgeführt wird.
- Eine IISW-Protokolldatei im W3C-Format muss auf dem lokalen Laufwerk des Computers gespeichert sein, auf dem der Azure Monitor-Agent ausgeführt wird.
- Jeder Eintrag in der Protokolldatei muss mit einem Zeilenende versehen sein.
- Die Protokolldatei darf weder Umlaufprotokollierung noch Protokollrotation, bei der die Datei mit neuen Einträgen überschrieben wird, noch Umbenennung zulassen, bei der eine Datei verschoben und eine neue Datei desselben Namens geöffnet wird.
Erstellen einer Datensammlungsregel zum Sammeln von IIS-Protokollen
Die Datensammlungsregel definiert Folgendes:
- Welche Quellprotokolldateien der Azure Monitor-Agent auf neue Ereignisse überprüft
- Wie Azure Monitor Ereignisse während der Erfassung transformiert
- Den Log Analytics-Zielarbeitsbereich und die Tabelle, in die Azure Monitor die Daten überträgt
Sie können eine Datensammlungsregel definieren, um Daten von mehreren Computern an mehrere Log Analytics-Arbeitsbereiche zu senden, u. a. Arbeitsbereiche in einer anderen Region oder einem anderen Mandanten. Erstellen Sie die Datensammlungsregel in der Region, in der sich auch Ihr Analytics-Arbeitsbereich befindet.
Hinweis
Zum mandantenübergreifenden Senden von Daten müssen Sie zuerst Azure Lighthouse aktivieren.
So erstellen Sie die Datensammlungsregel im Azure-Portal
Wählen Sie im Menü Überwachen die Option Datensammlungsregeln aus.
Wählen Sie Erstellen aus, um eine neue Datensammlungsregel und Zuordnungen zu erstellen.
Geben Sie einen Regelnamen ein, und geben Sie ein Abonnement, eine Ressourcengruppe, eine Region, einen Plattformtyp und einen Datensammlungsendpunkt an:
- Region: Hiermit wird angegeben, wo die Datensammlungsregel erstellt wird. Die virtuellen Computer und ihre Zuordnungen können unter einem beliebigen Abonnement bzw. einer Ressourcengruppe auf dem Mandanten angeordnet sein.
- Plattformtyp gibt die Art der Ressourcen an, auf die diese Regel angewendet werden kann. Die Option Benutzerdefiniert ermöglicht sowohl Windows- als auch Linux-Typen.
- Datensammlungsendpunkt ist ein optionales Feld, das nur festgelegt werden muss, wenn Sie private Azure Monitor-Verbindungen verwenden möchten. Wenn Sie diese Option benötigen, gibt das Feld den Datensammlungsendpunkt an, der zum Sammeln von Daten verwendet wird. Dieser Datensammlungsendpunkt muss sich in derselben Region befinden wie der Log Analytics-Arbeitsbereich. Weitere Informationen finden Sie unter Einrichten von Datensammlungsendpunkten basierend auf Ihrer Bereitstellung.
Gehen Sie auf der Registerkarte Ressourcen wie folgt vor:
Wählen Sie + Ressourcen hinzufügen aus, und ordnen Sie der Datensammlungsregel Ressourcen zu. Ressourcen können virtuelle Computer sowie Virtual Machine Scale Sets- und Azure Arc für Server-Instanzen sein. Das Azure-Portal installiert den Azure Monitor-Agent auf Ressourcen, auf denen der Agent noch nicht installiert ist.
Wichtig
Das Portal aktiviert zusätzlich zu den vorhandenen benutzerseitig zugewiesenen Identitäten (sofern vorhanden) eine systemseitig zugewiesene verwaltete Identität auf den Zielressourcen. Wenn die benutzerseitig zugewiesene Identität von Ihnen nicht extra in der Anforderung angegeben wird, wird auf dem Computer für vorhandene Anwendungen standardmäßig die systemseitig zugewiesene Identität verwendet.
Wählen Sie Datensammlungsendpunkte aktivieren aus.
Wählen Sie einen Datensammlungsendpunkt für jede der VMs aus, die der Datensammlungsregel zugeordnet sind.
Dieser Datensammlungsendpunkt sendet Konfigurationsdateien an den virtuellen Computer und muss sich in derselben Region wie der virtuelle Computer befinden. Weitere Informationen finden Sie unter Einrichten von Datensammlungsendpunkten basierend auf Ihrer Bereitstellung.
Wählen Sie auf der Registerkarte Sammeln und übermitteln die Option Datenquelle hinzufügen aus, um eine Datenquelle hinzuzufügen und ein Ziel festzulegen.
Wählen Sie IIS-Protokolle aus.
Geben Sie ein Dateimuster an, um das Verzeichnis zu identifizieren, in dem sich die Protokolldateien befinden.
Fügen Sie auf der Registerkarte Ziel ein Ziel für die Datenquelle hinzu.
Wählen Sie Überprüfen und erstellen aus, um die Details der Datensammlungsregel und die Zuordnung zur VM-Gruppe zu überprüfen.
Wählen Sie Erstellen aus, um die Datensammlungsregel zu erstellen.
Hinweis
Nach dem Erstellen der Datensammlungsregel kann es bis zu fünf Minuten dauern, bis Daten an die Ziele übertragen werden.
Beispielprotokollabfragen
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
Beispiel für eine Warnungsregel
Erstellen Sie eine Warnungsregel für jeden Datensatz mit dem Rückgabestatus 500.
W3CIISLog | where scStatus==500 | summarize AggregatedValue = count() by Computer, bin(TimeGenerated, 15m)
Problembehandlung
Führen Sie die folgenden Schritte aus, um Problembehandlung für die Sammlung von IIS-Protokollen auszuführen.
Überprüfen, ob IIS-Protokolle empfangen wurden
Überprüfen Sie zunächst, ob Datensätze für Ihre IIS-Protokolle gesammelt wurden, indem Sie die folgende Abfrage in Log Analytics ausführen. Wenn die Abfrage keine Datensätze zurückgibt, überprüfen Sie die anderen Abschnitte auf mögliche Ursachen. Diese Abfrage sucht nach Einträgen während letzten zwei Tage, aber Sie können diesen Zeitbereich auch ändern.
W3CIISLog
| where TimeGenerated > ago(48h)
| order by TimeGenerated desc
Überprüfen, ob der Agent Heartbeats erfolgreich sendet
Überprüfen Sie, ob der Azure Monitor-Agent ordnungsgemäß kommuniziert, indem Sie die folgende Abfrage in Log Analytics ausführen, um zu überprüfen, ob Datensätze in der Heartbeattabelle vorhanden sind.
Heartbeat
| where TimeGenerated > ago(24h)
| where Computer has "<computer name>"
| project TimeGenerated, Category, Version
| order by TimeGenerated desc
Überprüfen, ob IIS-Protokolle erstellt werden
Sehen Sie sich die Zeitstempel der Protokolldateien an, und öffnen Sie das neueste Protokoll, um zu überprüfen, ob die neuesten Zeitstempel in den Protokolldateien vorhanden sind. Der Standardspeicherort für IIS-Protokolldateien lautet: C:\inetpub\logs\LogFiles\W3SVC1.
Überprüfen, ob Sie den richtigen Protokollspeicherort in der Datensammlungsregel angegeben haben
Die Datensammlungsregel verfügt über einen Abschnitt ähnlich dem folgenden. Das logDirectories
-Element gibt den Pfad zur Protokolldatei an, die vom Agent-Computer erfasst werden soll. Überprüfen Sie den Agent-Computer, um zu überprüfen, ob dieser Pfad richtig ist.
"dataSources": [
{
"configuration": {
"logDirectories": ["C:\\scratch\\demo\\W3SVC1"]
},
"id": "myIisLogsDataSource",
"kind": "iisLog",
"streams": [{
"stream": "ONPREM_IIS_BLOB_V2"
}
],
"sendToChannels": ["gigl-dce-6a8e34db54bb4b6db22d99d86314eaee"]
}
]
Dieses Verzeichnis sollte dem Speicherort der IIS-Protokolle auf dem Agent-Computer entsprechen.
Überprüfen, ob die IIS-Protokolle als W3C formatiert sind
Öffnen Sie IIS-Manager, und überprüfen Sie, ob die Protokolle im W3C-Format geschrieben werden.
Öffnen Sie die IIS-Protokolldatei auf dem Agent-Computer, um zu überprüfen, ob Protokolle im W3C-Format vorliegen.
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.
Nächste Schritte
Weitere Informationen:
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für