Freigeben über


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:
  • CentralBinaryLoggingEnabled
  • CentralW3CLoggingEnabled
  • LogInUTF8

Setup

Das <log>-Element ist in der Standardinstallation von IIS 7 enthalten.

Gewusst wie

Aktivieren der zentralen Binärprotokollierung für einen Server

  1. Ö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.
  2. Klicken Sie im Bereich Verbindungen auf den Servernamen.

  3. Doppelklicken Sie im Bereich Start des Servers auf Protokollierung.
    Screenshot of Logging selected in the SERVER Home pane.

  4. 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.
    Screenshot of setting One log file per Server and Log File Format to Binary in the Logging pane.

  5. Wählen Sie im Bereich Aktionen die Option Übernehmen aus.

Aktivieren der zentralen W3C-Protokollierung für einen Server

  1. Ö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.
  2. Klicken Sie im Bereich Verbindungen auf den Servernamen.

  3. Doppelklicken Sie im Bereich Start des Servers auf Protokollierung.
    Screenshot of the Logging icon selected in the SERVER Home pane.

  4. 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.
    Screenshot of setting One log file per Server and Log File Format to W 3 C in the Logging pane.

  5. 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.
Wert Beschreibung
Site Konfiguriert alle Websites für die Verwendung der Websiteprotokollierung anstelle der zentralen Protokollierung. Dies ist die Standardeinstellung.

Der numerische Wert ist 0.
CentralBinary Erstellt eine Protokolldatei für alle Websites auf einem Webserver. Die Daten in der Protokolldatei sind binärbasierte, nicht formatierte Daten, die nicht anpassbar sind.

Der numerische Wert ist 1.
CentralW3C Protokolliert Anforderungen für alle Websites auf einem Webserver in einer einzigen zentralen Protokolldatei in einem textbasierten, anpassbaren ASCII-Format.

Der numerische Wert ist 2.
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()