Condividi tramite


Log log <>

Panoramica

L'elemento <log> specifica diverse opzioni di registrazione globale per Internet Information Services (IIS) 7. Ad esempio, l'attributo centralLogFileMode specifica se la registrazione a livello di sito, la registrazione W3C centrale o la registrazione binaria centrale è abilitata.

La registrazione a livello di sito crea singole directory di file di log per ogni sito nel server, in cui ogni cartella contiene solo i file di log per tale sito. La registrazione centrale consente l'uso di un singolo file di log per tutti i siti per il periodo di tempo specificato dall'attributo period per l'elemento <centralBinaryLogFile> o <centralW3CLogFile> . Il periodo di tempo può essere giornaliero, settimanale, mensile, orario o dimensione massima del file.

Nota

I file di log in formato W3C sono file basati su testo che la maggior parte delle utilità di analisi dei log può elaborare. I file di log binari usano un formato di archiviazione proprietario che richiede l'uso di un'applicazione in grado di elaborare i file di log in tale formato, ad esempio l'utilità LogParser di Microsoft .

Compatibilità

Versione Note
IIS 10.0 L'elemento <log> non è stato modificato in IIS 10.0.
IIS 8,5 L'elemento <log> non è stato modificato in IIS 8.5.
IIS 8,0 L'elemento <log> non è stato modificato in IIS 8.0.
IIS 7,5 L'elemento <log> non è stato modificato in IIS 7.5.
IIS 7.0 L'elemento <log> è stato introdotto in IIS 7.0.
IIS 6.0 L'elemento <log> sostituisce gli attributi iis 6.0 seguenti:
  • CentralBinaryLoggingEnabled
  • CentralW3CLoggingEnabled
  • LogInUTF8

Installazione

L'elemento <log> è incluso nell'installazione predefinita di IIS 7.

Procedure

Come abilitare la registrazione binaria centrale per un server

  1. Aprire Gestione Internet Information Services (IIS):

    • Se si usa Windows Server 2012 o Windows Server 2012 R2:

      • Sulla barra delle applicazioni fare clic su Server Manager, scegliere Strumenti, quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows 8 o Windows 8.1:

      • Tenere premuto il tasto Windows, premere la lettera X e quindi fare clic su Pannello di controllo.
      • Fare clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Server 2008 o Windows Server 2008 R2:

      • Sulla barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione, quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Vista o Windows 7:

      • Sulla barra delle applicazioni fare clic su Start e quindi su Pannello di controllo.
      • Fare doppio clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
  2. Nel riquadro Connessioni fare clic sul nome del server.

  3. Nel riquadro Home del server fare doppio clic su Registrazione.
    Screenshot dell'opzione Registrazione selezionata nel riquadro Home SERVER.

  4. Nella pagina Registrazione , in Un file di log per selezionare Server dall'elenco a discesa, quindi scegliere Binario dall'elenco a discesa Formato .
    Screenshot dell'impostazione di Un file di log per server e Formato file di log su Binario nel riquadro Registrazione.

  5. Fare clic su Applica nel riquadro Azioni .

Come abilitare la registrazione W3C centrale per un server

  1. Aprire Gestione Internet Information Services (IIS):

    • Se si usa Windows Server 2012 o Windows Server 2012 R2:

      • Sulla barra delle applicazioni fare clic su Server Manager, scegliere Strumenti, quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows 8 o Windows 8.1:

      • Tenere premuto il tasto Windows, premere la lettera X e quindi fare clic su Pannello di controllo.
      • Fare clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Server 2008 o Windows Server 2008 R2:

      • Sulla barra delle applicazioni fare clic su Start, scegliere Strumenti di amministrazione, quindi fare clic su Gestione Internet Information Services (IIS).
    • Se si usa Windows Vista o Windows 7:

      • Sulla barra delle applicazioni fare clic su Start e quindi su Pannello di controllo.
      • Fare doppio clic su Strumenti di amministrazione, quindi fare doppio clic su Gestione Internet Information Services (IIS).
  2. Nel riquadro Connessioni fare clic sul nome del server.

  3. Nel riquadro Home del server fare doppio clic su Registrazione.
    Screenshot dell'icona Registrazione selezionata nel riquadro Home SERVER.

  4. Nella pagina Registrazione , in Un file di log per selezionare Server dall'elenco a discesa, quindi scegliere W3C dall'elenco a discesa Formato .
    Screenshot dell'impostazione di Un file di log per server e Formato file di log su W 3 C nel riquadro Registrazione.

  5. Fare clic su Applica nel riquadro Azioni .

Configurazione

Attributi

Attributo Descrizione
centralLogFileMode Attributo di enumerazione facoltativo.

Specifica la modalità di registrazione centrale per il server.

L'attributo centralLogFileMode può avere uno dei valori possibili seguenti. Il valore predefinito è Site.
Valore Descrizione
Site Configura tutti i siti per l'uso della registrazione del sito invece della registrazione centrale. Si tratta dell'impostazione predefinita.

Il valore numerico è 0.
CentralBinary Crea un file di log per tutti i siti Web in un server Web. I dati nel file di log sono dati non formattati basati su binari e non personalizzabili.

Il valore numerico è 1.
CentralW3C Registra le richieste per tutti i siti in un server Web a un singolo file di log centrale in formato ASCII basato su testo.

Il valore numerico è 2.
logInUTF8 Attributo booleano facoltativo.

Specifica se IIS deve registrare tutte le stringhe nel formato di trasformazione UCS 8 (UTF-8). Questa impostazione si applica a livello di server a tutte le registrazioni in modalità testo.

Il valore predefinito è true.

Elementi figlio

Elemento Descrizione
centralBinaryLogFile Elemento facoltativo.

Specifica le impostazioni del log binario centrale per tutti i siti in un server.
centralW3CLogFile Elemento facoltativo.

Specifica le impostazioni di log W3C centrali per tutti i siti in un server.

Esempio di configurazione

L'esempio di configurazione seguente specifica che IIS userà la registrazione a livello di sito.

<log centralLogFileMode="Site">
   <centralBinaryLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" />
   <centralW3CLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" />
</log>

L'esempio di configurazione seguente specifica che IIS userà la registrazione binaria centrale e configura la rotazione giornaliera del file di log binario.

<log centralLogFileMode="CentralBinary">
   <centralBinaryLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" period="Daily" />
   <centralW3CLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" />
</log>

L'esempio di configurazione seguente specifica che IIS userà la registrazione W3C centrale e configura la rotazione giornaliera dei file di log W3C.

<log centralLogFileMode="CentralW3C">
   <centralBinaryLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" />
   <centralW3CLogFile enabled="true" directory="%SystemDrive%\inetpub\logs\LogFiles" period="Daily" />
</log>

Codice di esempio

Gli esempi di codice seguenti specificano che IIS userà la registrazione binaria centrale e configurerà la rotazione giornaliera del file di log binario.

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

Nota

È necessario assicurarsi di impostare il parametro commit su apphost quando si usa AppCmd.exe per configurare queste impostazioni. Questa operazione esegue il commit delle impostazioni di configurazione nella sezione percorso appropriata nel file di ApplicationHost.config.

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()

Gli esempi di codice seguenti specificano che IIS userà la registrazione W3C centrale e configura la rotazione giornaliera dei file di log W3C.

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

Nota

È necessario assicurarsi di impostare il parametro commit su apphost quando si usa AppCmd.exe per configurare queste impostazioni. Questa operazione esegue il commit delle impostazioni di configurazione nella sezione percorso appropriata nel file di ApplicationHost.config.

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()