Como: Gravar entradas evento logs

Quando você escrever uma entrada para um log de eventos, você especifica a mensagem que você deseja gravar no log sistema autônomo uma seqüência de caracteres.Uma mensagem deve conter todas as informações necessárias para interpretar o que causou o problema e o que fazer para corrigir o problema.

Há duas maneiras de você pode gravar uma entrada no log; ambos são igualmente válido.Propósito é a mais direta registrar uma origem do evento no log para o qual deseja gravar e, em seguida, criar uma instância de um componente e conjunto seus Source propriedade para esse log e finalmente chamar WriteEntry. Se você fizer isso, não é necessário conjunto o Log propriedade para a ocorrência do componente; o log é determinado automaticamente quando você se conecta a uma fonte que já foi registrada. Para obter mais informações sobre como registrar uma fonte, consulte Como: Adicionar o aplicativo sistema autônomo uma fonte de log de eventos entradas.

A Outros maneira de abordar esse processo é instanciar um EventLog componente, conjunto seu Source, MachineName, e Log propriedades e a telefonar a WriteEntry método. Nesse caso, a WriteEntry método poderia determinar se a fonte já existia e registrá-lo imediatamente se não especificou.

As seguintes condições devem ser atendidas para gravar uma entrada de log com êxito:

  • A fonte deve ser registrada com o log desejado.

    Observação:

    Você Configure o Source propriedade em seu EventLog instância do componente que você possa gravar entradas para um log. Quando o seu componente grava uma entrada, o sistema verifica automaticamente se a fonte especificada está registrada com o evento log ao qual o componente é escrita e chama CreateEventSource Se necessário. Em geral, criar nova fonte do evento durante a instalação do seu aplicativo.Isso dá time para o sistema operacional atualizar sua lista de fontes de evento registrados e suas configurações.Se o sistema operacional não tenha atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova fonte, que haverá falha na operação de gravação.Se criar a fonte durante a instalação não for uma opção, tente criar a fonte bem antes da primeira operação de gravar, talvez, durante a inicialização do aplicativo.Se você escolher essa abordagem, certifique-se de que seu código de inicialização está sendo executado com direitos de administrador no computador.Esses direitos são necessários para a criação de novas fontes de evento.

  • A mensagem que você especificar não pode ser mais de 16 K de comprimento.

  • Seu aplicativo deve ter acesso de gravação para o log ao qual ele está tentando gravar.Para obter mais informações, consulte Implicações de segurança de evento logs.

Você pode especificar vários parâmetros ao escrever uma entrada, incluindo o tipo de entrada que está fazendo uma ID que identifica o evento, uma categoria e todos os dados binário que você deseja acrescentar à entrada.

Para gravar uma entrada do log de eventos

  1. Criar uma instância de um EventLog componente. Para obter mais informações, consulte Como: Criar EventLog componente Instances.

  2. Use o CreateEventSource método para registrar uma fonte do evento com o log para o qual você deseja gravar uma entrada, usando uma seqüência de caracteres exclusiva para a seqüência de caracteres de fonte. conjunto o Source propriedade para que a fonte que você registrou o componente. Para obter mais informações, consulte Como: Configurar EventLog componente Instances.Chamar o WriteEntry método para especificar a entrada a ser gravados no log.

    If Not EventLog.SourceExists("MyApp1") Then
        EventLog.CreateEventSource("MyApp1", "Application")
    End If
    EventLog1.Source = "MyApp1"
    EventLog1.WriteEntry("This is a simple event log entry")
    
         if (!System.Diagnostics.EventLog.SourceExists("MyApp1"))
                System.Diagnostics.EventLog.CreateEventSource(
                   "MyApp1", "Application");
    
            EventLog1.Source = "MyApp";
            EventLog1.WriteEntry("This is a simple event log entry");
    

Para gravar um localizadas log de eventos entrada

  1. Criar uma instância de um EventLog componente. Para obter mais informações, consulte Como: Criar EventLog componente Instances.

  2. Para gravar localizadas evento entradas de log, use o WriteEvent método. Nesse caso, você especificar as propriedades de evento com identificadores de recursos em vez de valores de seqüência de caracteres.The Visualizador de eventos utiliza os identificadores de recurso para exibir as seqüências de caracteres correspondentes do arquivo de recurso localizado para a fonte.Você deve registrar a fonte de arquivo de recurso correspondente antes de escrever eventos usando identificadores de recurso.Para registrar um arquivo de recurso de informações, consulte Classe EventSourceCreationData.

    If Not EventLog.SourceExists("MyApp1") Then
        EventLog.CreateEventSource("MyApp1", "Application")
    End If
    EventLog1.Source = "MyApp1"
    EventLog1.WriteEvent(New EventInstance(1, 1), New String() {"message"})
    
         if (!System.Diagnostics.EventLog.SourceExists("MyApp1"))
                System.Diagnostics.EventLog.CreateEventSource(
                   "MyApp1", "Application");
    
            EventLog1.Source = "MyApp";
            EventLog1.WriteEvent(new System.Diagnostics.EventInstance(1, 1), new string[] { "message" });
    

Consulte também

Tarefas

Como: Configurar EventLog componente Instances

Como: Criar EventLog componente Instances

Como: Adicionar o aplicativo sistema autônomo uma fonte de log de eventos entradas

Demonstra Passo a passo: Explorando os logs de eventos, fontes de evento e entradas

Conceitos

Introdução ao componente EventLog

Referência

EventLog