Zentrale W3C-Protokolldatei <centralW3CLogFile>
Übersicht
Das <centralW3CLogFile>
-Element gibt die zentralen W3C-Protokolleinstellungen für alle Websites auf einem Server an.
Hinweis
Sie müssen das centralLogFileMode-Attribut des übergeordneten <log>
-Elements auf CentralW3C festlegen, damit die Attribute für das <centralW3CLogFile>
-Element wirksam werden. Wenn das centralLogFileMode-Attribut des <log>
-Elements auf CentralBinary oder Site festgelegt ist, werden die Attribute für das <centralW3CLogFile>
-Element ignoriert.
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 | Das <centralW3CLogFile> Element wurde in IIS 10.0 nicht geändert. |
IIS 8.5 | Das <centralW3CLogFile> Element wurde in IIS 8.5 nicht geändert. |
IIS 8.0 | Das <centralW3CLogFile> Element wurde in IIS 8.0 nicht geändert. |
IIS 7.5 | Das <centralW3CLogFile> -Element wurde in IIS 7.5 nicht geändert. |
IIS 7.0 | Das <centralW3CLogFile> -Element des <log> -Elements wurde in IIS 7.0 eingeführt. |
IIS 6.0 | Das <log> -Element ersetzt das CentralW3CLoggingEnabled-Flag von IIS 6.0. |
Setup
Das <centralW3CLogFile>
-Element des <log>
-Elements ist in der Standardinstallation von IIS 7 enthalten.
Gewusst wie
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 | ||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
directory |
Optionales Zeichenfolgeattribut. Gibt das Verzeichnis an, in das Protokolleinträge geschrieben werden. Der Standardwert ist %SystemDrive%\inetpub\logs\LogFiles . |
||||||||||||||||||||||||||||||||||||||||||||||
enabled |
Optionales boolesches Attribut. Gibt an, ob die zentrale W3C-Protokollierung aktiviert ist. Der Standardwert ist true . |
||||||||||||||||||||||||||||||||||||||||||||||
localTimeRollover |
Optionales boolesches Attribut. Gibt an, ob eine neue Protokolldatei basierend auf der Ortszeit oder der koordinierten Weltzeit (Coordinated Universal Time, UTC), erstellt wird. Ein Wert von true bedeutet, dass die neue Protokolldatei auf der lokalen Zeit basiert, wohingegen false bedeutet, dass sie auf UTC basiert. Der Standardwert ist false . |
||||||||||||||||||||||||||||||||||||||||||||||
logExtFileFlags |
Optionales Flags-Attribut. Gibt an, welche Felder protokolliert werden sollen. Das logExtFileFlags-Attribut kann einen der folgenden Werte oder eine Liste dieser Werte aufweisen. Der Standardwert ist eine Liste dieser Werte: Date , Time , ClientIP , UserName , SiteName , ServerIP , Method , UriStem , UriQuery , HttpStatus , TimeTaken ,Win32Status , ServerPort , UserAgent , HttpSubStatus .
|
||||||||||||||||||||||||||||||||||||||||||||||
period |
Optionales Enumerationsattribut. Gibt an, wie häufig die aktuelle Protokolldatei geschlossen und eine neue Protokolldatei gestartet wird. Die zulässigen Werte für das period-Attribut sind im Folgenden aufgeführt. Der Standardwert ist Daily .
|
||||||||||||||||||||||||||||||||||||||||||||||
truncateSize |
Optionales int64-Attribut. Gibt die Größe in Bytes an, bei der der Inhalt der Protokolldatei abgeschnitten wird. Dieses Attribut muss festgelegt werden, wenn der Wert des periodischen Attributs maxSize ist. Die Größe muss zwischen 1048576 (1 MB) und 4294967295 (4 Gigabyte) betragen. Der Standardwert ist 20971520 (20 Megabyte). |
Untergeordnete Elemente
Keine.
Konfigurationsbeispiel
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 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()