Protokoll <log>
Übersicht
Das Element <log>
gibt mehrere globale Protokollierungsoptionen für Internetinformationsdienste (IIS) 7 an. Das Attribut centralLogFileMode gibt beispielsweise an, ob die Protokollierung auf Websiteebene, die zentrale W3C-Protokollierung oder die zentrale binäre Protokollierung aktiviert ist.
Die Protokollierung auf Websiteebene erstellt einzelne Protokolldateiverzeichnisse für jede Website auf Ihrem Server, in der jeder Ordner nur die Protokolldateien für diese Website enthält. Die zentrale Protokollierung ermöglicht die Verwendung einer einzelnen Protokolldatei für alle Websites für den Zeitraum, der durch das Period-Attribut für das <centralBinaryLogFile>
Oder<centralW3CLogFile>
-Element angegeben wird. Der Zeitraum kann täglich, wöchentlich, monatlich, stündlich oder eine maximale Dateigröße sein.
Hinweis
Protokolldateien im W3C-Format sind textbasierte Dateien, die von den meisten Protokollanalyseprogrammen verarbeitet werden können. Binäre Protokolldateien verwenden ein proprietäres Speicherformat, das die Verwendung einer Anwendung erfordert, die Protokolldateien in diesem Format verarbeiten kann, z . B. das Hilfsprogramm LogParser von Microsoft.
Kompatibilität
Version | Hinweise |
---|---|
(IIS 10.0 UND HÖHER) | Das <log> Element wurde in IIS 10.0 nicht geändert. |
IIS 8.5 | Das <log> Element wurde in IIS 8.5 nicht geändert. |
IIS 8.0 | Das <log> Element wurde in IIS 8.0 nicht geändert. |
IIS 7.5 | Das <log> Element wurde in IIS 7.5 nicht geändert. |
IIS 7.0 | Das <log> -Element wurde in IIS 7.0 eingeführt. |
IIS 6.0 | Das <log> -Element ersetzt die folgenden Attribute von IIS 6.0:
|
Setup
Das <log>
-Element ist in der Standardinstallation von IIS 7 enthalten.
Gewusst wie
Aktivieren der zentralen Binärprotokollierung für einen Server
Öffnen Sie den Internet Information Services (IIS) Manager:
Wenn Sie Windows Server 2012 oder Windows Server 2012 R2 verwenden:
- Klicken Sie der der Taskleiste auf Server-Managerdann auf Toolsund dann auf den Internet Information Services (IIS) Manager.
Wenn Sie Windows 8 oder Windows 8.1 verwenden:
- Halten Sie die Windows-Taste gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf "Systemsteuerung".
- Klicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
Wenn Sie Windows Server 2008 oder Windows Server 2008 R2 verwenden:
- Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltungund dann auf den Internet Information Services (IIS) Manager.
Wenn Sie Windows Vista oder Windows 7 verwenden:
- Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
- Doppelklicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
Klicken Sie im Bereich Verbindungen auf den Servernamen.
Doppelklicken Sie im Bereich Start des Servers auf Protokollierung.
Wählen Sie auf der Seite Protokollierung unter Eine Protokolldatei pro in der Dropdownliste Server aus und wählen Sie dann Binär aus der Dropdownliste Format aus.
Wählen Sie im Bereich Aktionen die Option Übernehmen aus.
Aktivieren der zentralen W3C-Protokollierung für einen Server
Öffnen Sie den Internet Information Services (IIS) Manager:
Wenn Sie Windows Server 2012 oder Windows Server 2012 R2 verwenden:
- Klicken Sie der der Taskleiste auf Server-Managerdann auf Toolsund dann auf den Internet Information Services (IIS) Manager.
Wenn Sie Windows 8 oder Windows 8.1 verwenden:
- Halten Sie die Windows-Taste gedrückt, drücken Sie den Buchstaben X, und klicken Sie dann auf "Systemsteuerung".
- Klicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
Wenn Sie Windows Server 2008 oder Windows Server 2008 R2 verwenden:
- Klicken Sie auf der Taskleiste auf Start, zeigen Sie auf Verwaltungund dann auf den Internet Information Services (IIS) Manager.
Wenn Sie Windows Vista oder Windows 7 verwenden:
- Klicken Sie auf der Taskleiste auf Start und dann auf Systemsteuerung.
- Doppelklicken Sie auf Verwaltungund doppelklicken Sie dann auf den Internet Information Services (IIS) Manager.
Klicken Sie im Bereich Verbindungen auf den Servernamen.
Doppelklicken Sie im Bereich Start des Servers auf Protokollierung.
Wählen Sie auf der Seite Protokollierung unter Eine Protokolldatei pro in der Dropdownliste Server aus und wählen Sie dann W3C aus der Dropdownliste Format aus.
Wählen Sie im Bereich Aktionen die Option Übernehmen aus.
Konfiguration
Attribute
Attribut | Beschreibung | ||||||||
---|---|---|---|---|---|---|---|---|---|
centralLogFileMode |
Optionales Enumerationsattribut. Gibt den zentralen Protokollierungsmodus für den Server an. Das centralLogFileMode-Attribut kann einen der folgenden Werte haben. Der Standardwert ist Site .
|
||||||||
logInUTF8 |
Optionales boolesches Attribut. Gibt an, ob IIS alle Zeichenfolgen im UCS-Transformationsformat 8 (UTF-8) protokollieren soll. Diese Einstellung wird serverweit auf jegliche Textmodusprotokollierung angewendet. Der Standardwert ist true . |
Untergeordnete Elemente
Element | Beschreibung |
---|---|
centralBinaryLogFile |
Optionales Element. Gibt die zentralen Binär-Protokolleinstellungen für alle Websites auf einem Server an. |
centralW3CLogFile |
Optionales Element. Gibt die zentralen W3C-Protokolleinstellungen für alle Standorte auf einem Server an. |
Konfigurationsbeispiel
Im folgenden Konfigurationsbeispiel wird angegeben, dass IIS die Protokollierung auf Websiteeebene verwendet.
<log centralLogFileMode="Site">
<centralBinaryLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" />
<centralW3CLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" />
</log>
Im folgenden Konfigurationsbeispiel wird angegeben, dass IIS die zentrale binäre Protokollierung verwendet und den Wechsel der binären Protokolldatei täglich konfiguriert.
<log centralLogFileMode="CentralBinary">
<centralBinaryLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" period="Daily" />
<centralW3CLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" />
</log>
Im folgenden Konfigurationsbeispiel wird angegeben, dass IIS die zentrale W3C-Protokollierung verwendet und den Wechsel der W3C-Protokolldatei täglich konfiguriert.
<log centralLogFileMode="CentralW3C">
<centralBinaryLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" />
<centralW3CLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" period="Daily" />
</log>
Beispielcode
Die folgenden Codebeispiele geben an, dass IIS die zentrale binäre Protokollierung verwendet und den Wechsel der binären Protokolldateien täglich konfiguriert.
AppCmd.exe
appcmd.exe set config -section:system.applicationHost/log /centralLogFileMode:"CentralBinary" /commit:apphost
appcmd.exe set config -section:system.applicationHost/log /centralBinaryLogFile.period:"Daily" /commit:apphost
Hinweis
Sie müssen unbedingt den Commitparameterapphost
festlegen, wenn Sie AppCmd.exe verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei ApplicationHost.config festgelegt.
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample
{
private static void Main()
{
using (ServerManager serverManager = new ServerManager())
{
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection logSection = config.GetSection("system.applicationHost/log");
logSection["centralLogFileMode"] = @"CentralBinary";
ConfigurationElement centralBinaryLogFileElement = logSection.GetChildElement("centralBinaryLogFile");
centralBinaryLogFileElement["period"] = @"Daily";
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim logSection As ConfigurationSection = config.GetSection("system.applicationHost/log")
logSection("centralLogFileMode") = "CentralBinary"
Dim centralBinaryLogFileElement As ConfigurationElement = logSection.GetChildElement("centralBinaryLogFile")
centralBinaryLogFileElement("period") = "Daily"
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var logSection = adminManager.GetAdminSection("system.applicationHost/log", "MACHINE/WEBROOT/APPHOST");
logSection.Properties.Item("centralLogFileMode").Value = "CentralBinary";
var centralBinaryLogFileElement = logSection.ChildElements.Item("centralBinaryLogFile");
centralBinaryLogFileElement.Properties.Item("period").Value = "Daily";
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set logSection = adminManager.GetAdminSection("system.applicationHost/log", "MACHINE/WEBROOT/APPHOST")
logSection.Properties.Item("centralLogFileMode").Value = "CentralBinary"
Set centralBinaryLogFileElement = logSection.ChildElements.Item("centralBinaryLogFile")
centralBinaryLogFileElement.Properties.Item("period").Value = "Daily"
adminManager.CommitChanges()
Die folgenden Codebeispiele geben an, dass IIS die zentrale W3C-Protokollierung verwendet und den Wechsel der W3C-Protokolldateien täglich konfiguriert.
AppCmd.exe
appcmd.exe set config -section:system.applicationHost/log /centralLogFileMode:"CentralW3C" /commit:apphost
appcmd.exe set config -section:system.applicationHost/log /centralW3CLogFile.period:"Daily" /commit:apphost
Hinweis
Sie müssen unbedingt den Commitparameterapphost
festlegen, wenn Sie AppCmd.exe verwenden, um diese Einstellungen zu konfigurieren. Dadurch werden die Konfigurationseinstellungen auf den entsprechenden Speicherortabschnitt in der Datei ApplicationHost.config festgelegt.
C#
using System;
using System.Text;
using Microsoft.Web.Administration;
internal static class Sample
{
private static void Main()
{
using (ServerManager serverManager = new ServerManager())
{
Configuration config = serverManager.GetApplicationHostConfiguration();
ConfigurationSection logSection = config.GetSection("system.applicationHost/log");
logSection["centralLogFileMode"] = @"CentralW3C";
ConfigurationElement centralW3CLogFileElement = logSection.GetChildElement("centralW3CLogFile");
centralW3CLogFileElement["period"] = @"Daily";
serverManager.CommitChanges();
}
}
}
VB.NET
Imports System
Imports System.Text
Imports Microsoft.Web.Administration
Module Sample
Sub Main()
Dim serverManager As ServerManager = New ServerManager
Dim config As Configuration = serverManager.GetApplicationHostConfiguration
Dim logSection As ConfigurationSection = config.GetSection("system.applicationHost/log")
logSection("centralLogFileMode") = "CentralW3C"
Dim centralW3CLogFileElement As ConfigurationElement = logSection.GetChildElement("centralW3CLogFile")
centralW3CLogFileElement("period") = "Daily"
serverManager.CommitChanges()
End Sub
End Module
JavaScript
var adminManager = new ActiveXObject('Microsoft.ApplicationHost.WritableAdminManager');
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST";
var logSection = adminManager.GetAdminSection("system.applicationHost/log", "MACHINE/WEBROOT/APPHOST");
logSection.Properties.Item("centralLogFileMode").Value = "CentralW3C";
var centralW3CLogFileElement = logSection.ChildElements.Item("centralW3CLogFile");
centralW3CLogFileElement.Properties.Item("period").Value = "Daily";
adminManager.CommitChanges();
VBScript
Set adminManager = WScript.CreateObject("Microsoft.ApplicationHost.WritableAdminManager")
adminManager.CommitPath = "MACHINE/WEBROOT/APPHOST"
Set logSection = adminManager.GetAdminSection("system.applicationHost/log", "MACHINE/WEBROOT/APPHOST")
logSection.Properties.Item("centralLogFileMode").Value = "CentralW3C"
Set centralW3CLogFileElement = logSection.ChildElements.Item("centralW3CLogFile")
centralW3CLogFileElement.Properties.Item("period").Value = "Daily"
adminManager.CommitChanges()