Compartilhar via


Arquivo de log W3C central <centralW3CLogFile>

Visão geral

O elemento <centralW3CLogFile> especifica as configurações de log W3C central para todos os sites em um servidor.

Observação

Você precisa definir o atributo centralLogFileMode do elemento pai <log> como CentralW3C para que os atributos no elemento <centralW3CLogFile> tenham efeito. Se o atributo centralLogFileMode do elemento <log> for definido como CentralBinary ou Site, os atributos no elemento <centralW3CLogFile> serão ignorados.

Observação

Arquivos de log no formato W3C são arquivos baseados em texto que a maioria dos utilitários de análise de log pode processar. Os arquivos de log binários usam um formato de armazenamento proprietário que requer o uso de um aplicativo que possa processar arquivos de log nesse formato, como o utilitário LogParser da Microsoft.

Compatibilidade

Versão Observações
IIS 10.0 O elemento <centralW3CLogFile> não foi modificado no IIS 10.0.
IIS 8.5 O elemento <centralW3CLogFile> não foi modificado no IIS 8.5.
IIS 8.0 O elemento <centralW3CLogFile> não foi modificado no IIS 8.0.
IIS 7.5 O elemento <centralW3CLogFile> não foi modificado no IIS 7.5.
IIS 7.0 O elemento <centralW3CLogFile> do elemento <log> foi introduzido no IIS 7.0.
IIS 6,0 O elemento <log> substitui o sinalizador CentralW3CLoggingEnabled do IIS 6.0.

Instalação

O elemento <centralW3CLogFile> do elemento <log> está incluído na instalação padrão do IIS 7.

Instruções

Como habilitar o registro em log W3C central para um servidor

  1. Abra o Gerenciador dos Serviços de Informações da Internet (IIS):

    • Caso você esteja usando o Windows Server 2012 ou o Windows Server 2012 R2:

      • Na barra de tarefas, clique em Gerenciador do Servidor, em Ferramentas e em Gerenciador dos Serviços de Informações da Internet (IIS).
    • Se você estiver usando o Windows 8 ou Windows 8.1:

      • Mantenha pressionada a tecla Windows, pressione a letra X e clique em Painel de Controle.
      • Clique em Ferramentas Administrativas e clique duas vezes em Gerenciador dos Serviços de Informações da Internet (IIS).
    • Caso você esteja usando o Windows Server 2008 ou o Windows Server 2008 R2:

      • Na barra de tarefas, clique em Iniciar, vá para Ferramentas Administrativas e clique em Gerenciador dos Serviços de Informações da Internet (IIS).
    • Se você estiver usando o Windows Vista ou Windows 7:

      • Na barra de tarefas, clique em Iniciar e, depois, em Painel de Controle.
      • Clique duas vezes em Ferramentas Administrativas e clique duas vezes em Gerenciador dos Serviços de Informações da Internet (IIS).
  2. No painel Conexões, clique no nome do servidor.

  3. No painel Página Inicial do servidor, clique duas vezes em Registro em Log.
    Screenshot of the Logging icon being highlighted.

  4. Na página Registro em Log, em Um arquivo de log por, selecione Servidor na lista suspensa e escolha W3C na lista suspensa Formatar.
    Screenshot of the Logging screen with the Format drop-down being highlighted.

  5. Clique em Aplicar no painel Ações.

Configuração

Atributos

Atributo Descrição
directory Atributo de cadeia de caracteres opcional.

Especifica o diretório em que as entradas de log são gravadas.

O valor padrão é %SystemDrive%\inetpub\logs\LogFiles.
enabled Atributo booliano opcional.

Especifica se o log W3C central é habilitado.

O valor padrão é true.
localTimeRollover Atributo booliano opcional.

Especifica se um novo arquivo de log é criado com base na hora local ou UTC (Tempo Universal Coordenado). Um valor True significa que o novo arquivo de log é baseado na hora local; False significa que ele é baseado no UTC.

O valor padrão é false.
logExtFileFlags Atributo de sinalizadores opcionais.

Especifica quais campos registrar em log.

O atributo logExtFileFlags pode ter um dos valores a seguir ou uma lista desses valores. O padrão é uma lista destes valores: Date, Time, ClientIP, UserName, SiteName, ServerIP, Method, UriStem, UriQuery, HttpStatus, TimeTaken,Win32Status, ServerPort, UserAgent, HttpSubStatus.
Valor Descrição
Date A data em que a atividade ocorreu.

O valor numérico é 1.
Time A hora, em UTC (Tempo Universal Coordenado), na qual atividade ocorreu.

O valor numérico é 2.
ClientIP Endereço IP do cliente que fez a solicitação.

O valor numérico é 4.
UserName O nome do usuário autenticado que acessou seu servidor. Os usuários anônimos são indicados por um hífen.

O valor numérico é 8.
SiteName O nome do servidor no qual a entrada do arquivo de log foi gerada.

O valor numérico é 16.
ComputerName O nome do computador do qual a solicitação foi feita.

O valor numérico é 32.
ServerIP O endereço IP do servidor no qual a entrada do arquivo de log foi gerada.

O valor numérico é 64.
Method A ação solicitada, por exemplo, um método GET.

O valor numérico é 128.
UriStem O destino da ação, por exemplo, Default.htm.

O valor numérico é 256.
UriQuery A consulta, se houver, que o cliente estava tentando executar. Um URI (Resource Identifier Universal) consulta é necessário apenas para páginas dinâmico.

O valor numérico é 512.
HttpStatus O código de status HTTP.

O valor numérico é 1024.
Win32Status O código de status do Windows.

O valor numérico é 2048.
BytesSent O número de bytes que o servidor enviou.

O valor numérico é 4096.
BytesRecv O número de bytes que o servidor recebeu.

O valor numérico é 8192.
TimeTaken O tempo que a ação tomou, em milissegundos.

O valor numérico é 16384.
ServerPort O número da porta do servidor que está configurado para o serviço.

O valor numérico é 32768.
UserAgent O tipo de navegador que o cliente usou.

O valor numérico é 65536.
Cookie O conteúdo do cookie enviado ou recebido, se um cookie foi enviado ou recebido.

O valor numérico é 131072.
Referer O último site que o usuário visitou. Esse site fornece um link para o site atual.

O valor numérico é 262144.
ProtocolVersion A versão do protocolo usada pelo cliente.

O valor numérico é 524288.
Host O nome do cabeçalho do host, se houver um cabeçalho de host.

O valor numérico é 1048576.
HttpSubStatus O código de erro do substatus.

O valor numérico é 2097152.
period Atributo de enumeração opcional.

Especifica com que frequência o arquivo de log atual é fechado e um novo arquivo de log é iniciado.

O atributo period pode ser um dos valores possíveis a seguir.

O padrão é Daily.
Valor Descrição
MaxSize Inicie novos arquivos de log sempre que o arquivo de log atinge o tamanho especificado pelo atributo truncateSize.

O valor numérico é 0.
Daily Inicie novos arquivos de log todos os dias.

O valor numérico é 1.
Weekly Inicie novos arquivos de log uma vez por semana.

O valor numérico é 2.
Monthly Inicie novos arquivos de log uma vez por mês.

O valor numérico é 3.
Hourly Inicie novos arquivos de log a cada hora.

O valor numérico é 4.
truncateSize Atributo int64 opcional.

Especifica o tamanho, em bytes, em que o conteúdo do arquivo de log será truncado. Esse atributo deve ser definido quando o valor do atributo de período for maxSize. O tamanho deverá estar entre 1048576 (1 megabyte) e 4294967295 (4 gigabytes).

O valor padrão é 20971520 (20 megabytes).

Elementos filho

Nenhum.

Exemplo de configuração

O exemplo de configuração a seguir especifica que o IIS usará o registro em log W3C central e configurará a rotação de arquivos de log W3C diariamente.

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

Exemplo de código

Os exemplos de código a seguir especificam que o IIS usará o registro em log W3C central e configurará a rotação do arquivos de log W3C diariamente.

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

Observação

Defina o parâmetro commit para apphost quando usar AppCmd.exe para definir essas configurações. Isso confirma as definições de configuração para a seção de local apropriado no arquivo 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()