Ler em inglês

Partilhar via


EventLog.WriteEntry Método

Definição

Grava uma entrada no log de eventos.

Sobrecargas

WriteEntry(String, String, EventLogEntryType, Int32, Int16, Byte[])

Grava uma entrada com o texto da mensagem fornecido, o identificador de eventos definido pelo aplicativo e a categoria definida por aplicativo no log de eventos (usando a fonte de evento registrada especificada) e anexa dados binários à mensagem.

WriteEntry(String, String, EventLogEntryType, Int32, Int16)

Grava uma entrada com o texto da mensagem fornecido, o identificador de evento definido pelo aplicativo e a categoria definida pelo aplicativo no log de eventos, usando a fonte de evento registrada especificada. O category pode ser usado pelo Visualizador de Eventos para filtrar eventos no log.

WriteEntry(String, EventLogEntryType, Int32, Int16, Byte[])

Grava uma entrada com o texto da mensagem fornecido, o identificador de eventos definido pelo aplicativo e a categoria definida por aplicativo no log de eventos e anexa dados binários à mensagem.

WriteEntry(String, String, EventLogEntryType, Int32)

Grava uma entrada com o texto da mensagem especificado e o identificador de evento definido pelo aplicativo no log de eventos, usando a fonte de evento registrada especificada.

WriteEntry(String, EventLogEntryType, Int32, Int16)

Grava uma entrada com o texto da mensagem especificado, o identificador de evento definido pelo aplicativo e a categoria definida pelo aplicativo no log de eventos.

WriteEntry(String, EventLogEntryType)

Grava uma entrada de erro, aviso, informação, auditoria de êxito ou auditoria de falha com o texto da mensagem fornecido no log de eventos.

WriteEntry(String, EventLogEntryType, Int32)

Grava no log de eventos uma entrada com o texto da mensagem especificado e o identificador de evento definido pelo aplicativo.

WriteEntry(String, String)

Grava uma entrada de tipo de informação com o texto da mensagem especificado no log de eventos usando a origem do evento registrada especificada.

WriteEntry(String)

Grava uma entrada de tipo de informação, com o texto da mensagem fornecido, no log de eventos.

WriteEntry(String, String, EventLogEntryType)

Grava uma entrada de erro, aviso, informação, auditoria de êxito ou auditoria de falha com o texto da mensagem fornecido no log de eventos, usando a origem do evento registrado especificado.

WriteEntry(String, String, EventLogEntryType, Int32, Int16, Byte[])

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava uma entrada com o texto da mensagem fornecido, o identificador de eventos definido pelo aplicativo e a categoria definida por aplicativo no log de eventos (usando a fonte de evento registrada especificada) e anexa dados binários à mensagem.

C#
public static void WriteEntry (string source, string message, System.Diagnostics.EventLogEntryType type, int eventID, short category, byte[] rawData);

Parâmetros

source
String

A fonte pela qual o aplicativo está registrado no computador especificado.

message
String

A cadeia de caracteres a ser gravada no log de eventos.

type
EventLogEntryType

Um dos valores de EventLogEntryType.

eventID
Int32

O identificador específico do aplicativo para o evento.

category
Int16

A subcategoria específica do aplicativo associada à mensagem.

rawData
Byte[]

Uma matriz de bytes que contém os dados binários associados à entrada.

Exceções

O valor source é uma cadeia de caracteres vazia ("").

- ou -

O valor source é null.

- ou -

eventID é menor que zero ou maior que UInt16.MaxValue.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

C#
//Create a byte array for binary data to associate with the entry.
byte[] myByte = new byte[10];
//Populate the byte array with simulated data.
for (int i = 0; i < 10; i++)
{
    myByte[i] = (byte)(i % 2);
}
// Write an entry to the event log that includes associated binary data.
Console.WriteLine("Write from second source ");
EventLog.WriteEntry("SecondSource", "Writing warning to event log.",
                     EventLogEntryType.Error, myEventID, myCategory, myByte);

Comentários

Use esse método para gravar dados específicos de eventos definidos pelo aplicativo no log de eventos, usando uma origem já registrada como uma origem do evento para o log apropriado. O Visualizador de Eventos não interpreta esses dados; ele exibe dados brutos apenas em um formato hexadecimal e de texto combinados. Usar dados específicos do evento com moderação; inclua-o somente se tiver certeza de que ele será útil. Você também pode usar dados específicos do evento para armazenar informações que o aplicativo pode processar independentemente do Visualizador de Eventos. Por exemplo, você pode escrever um visualizador especificamente para seus eventos ou escrever um programa que examina o arquivo de log e cria relatórios que incluem informações dos dados específicos do evento.

Além dos dados binários, você pode especificar uma categoria definida pelo aplicativo e um identificador de evento definido pelo aplicativo. O Visualizador de Eventos usa a categoria para filtrar eventos gravados por uma origem do evento. O Visualizador de Eventos pode exibir a categoria como um valor numérico ou pode usar a categoria como um identificador de recurso para exibir uma cadeia de caracteres de categoria localizada.

Nota

O category parâmetro deve ser um valor positivo. Os valores de categoria negativos aparecem como um número positivo complementar na Visualizador de Eventos. Por exemplo, um -10 aparecerá como 65.526, um -1 como 65.535.

Para exibir cadeias de caracteres de categoria localizadas no Visualizador de Eventos, você deve usar uma origem de evento configurada com um arquivo de recurso de categoria e definir o category como um identificador de recurso no arquivo de recurso de categoria. Se a origem do evento não tiver um arquivo de recurso de categoria configurado ou se o especificado category não indexar uma cadeia de caracteres no arquivo de recurso de categoria, o Visualizador de Eventos exibirá o valor da categoria numérica para essa entrada. Configure o arquivo de recurso de categoria, juntamente com o número de cadeias de caracteres de categoria no arquivo de recurso, usando a EventLogInstaller classe ou EventSourceCreationData .

Os identificadores de evento, juntamente com a origem do evento, identificam exclusivamente um evento. Cada aplicativo pode definir seus próprios eventos numerados e as cadeias de caracteres de descrição para as quais eles mapeiam. Os visualizadores de eventos exibem esses valores de cadeia de caracteres para ajudar o usuário a entender o que deu errado e sugerir quais ações tomar.

Por fim, você pode especificar um EventLogEntryType para o evento que está sendo gravado no log de eventos. O type é indicado por um ícone e texto na coluna Tipo no Visualizador de Eventos para um log. Esse parâmetro indica se o tipo de evento é erro, aviso, informações, auditoria de êxito ou auditoria de falha.

Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem. Create a nova origem do evento durante a instalação do aplicativo. Isso permite que o sistema operacional atualize sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova origem do evento.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e, em seguida, use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos a trata como uma cadeia de caracteres de inserção. Como um endereço IPv6 (protocolo IPv6) versão 6 pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

WriteEntry(String, String, EventLogEntryType, Int32, Int16)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava uma entrada com o texto da mensagem fornecido, o identificador de evento definido pelo aplicativo e a categoria definida pelo aplicativo no log de eventos, usando a fonte de evento registrada especificada. O category pode ser usado pelo Visualizador de Eventos para filtrar eventos no log.

C#
public static void WriteEntry (string source, string message, System.Diagnostics.EventLogEntryType type, int eventID, short category);

Parâmetros

source
String

A fonte pela qual o aplicativo está registrado no computador especificado.

message
String

A cadeia de caracteres a ser gravada no log de eventos.

type
EventLogEntryType

Um dos valores de EventLogEntryType.

eventID
Int32

O identificador específico do aplicativo para o evento.

category
Int16

A subcategoria específica do aplicativo associada à mensagem.

Exceções

O valor source é uma cadeia de caracteres vazia ("").

- ou -

O valor source é null.

- ou -

eventID é menor que zero ou maior que UInt16.MaxValue.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

C#
int myEventID = 20;
short myCategory = 10;
// Write an informational entry to the event log.
Console.WriteLine("Write from first source ");
EventLog.WriteEntry("FirstSource", "Writing warning to event log.",
                     EventLogEntryType.Information, myEventID, myCategory);

Comentários

Use esse método para gravar uma entrada com um aplicativo definido category no log de eventos, usando uma origem que já está registrada como uma origem do evento para o log apropriado. O Visualizador de Eventos usa a categoria para filtrar eventos gravados por uma origem do evento. O Visualizador de Eventos pode exibir a categoria como um valor numérico ou pode usar a categoria como um identificador de recurso para exibir uma cadeia de caracteres de categoria localizada.

Nota

O category parâmetro deve ser um valor positivo. Os valores de categoria negativos aparecem como um número positivo complementar na Visualizador de Eventos. Por exemplo, um -10 aparece como 65.526, um -1 como 65.535.

Para exibir cadeias de caracteres de categoria localizadas no Visualizador de Eventos, você deve usar uma origem de evento configurada com um arquivo de recurso de categoria e definir o category como um identificador de recurso no arquivo de recurso de categoria. Se a origem do evento não tiver um arquivo de recurso de categoria configurado ou se o especificado category não indexar uma cadeia de caracteres no arquivo de recurso de categoria, o Visualizador de Eventos exibirá o valor da categoria numérica para essa entrada. Configure o arquivo de recurso de categoria, juntamente com o número de cadeias de caracteres de categoria no arquivo de recurso, usando a EventLogInstaller classe ou EventSourceCreationData .

Além da categoria, você pode especificar um identificador de evento para o evento que está sendo gravado no log de eventos. Os identificadores de evento, juntamente com a origem do evento, identificam exclusivamente um evento. Cada aplicativo pode definir seus próprios eventos numerados e as cadeias de caracteres de descrição para as quais eles mapeiam. Os visualizadores de eventos exibem esses valores de cadeia de caracteres para ajudar o usuário a entender o que deu errado e sugerir quais ações tomar.

Por fim, você pode especificar um EventLogEntryType para o evento que está sendo gravado no log de eventos. O type é indicado por um ícone e texto na coluna Tipo no Visualizador de Eventos para um log. Esse parâmetro indica se o tipo de evento é erro, aviso, informações, auditoria de êxito ou auditoria de falha.

Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem. Create a nova origem do evento durante a instalação do aplicativo. Isso permite que o sistema operacional atualize sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova origem do evento.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e, em seguida, use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos a trata como uma cadeia de caracteres de inserção. Como um endereço IPv6 (protocolo IPv6) versão 6 pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

WriteEntry(String, EventLogEntryType, Int32, Int16, Byte[])

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava uma entrada com o texto da mensagem fornecido, o identificador de eventos definido pelo aplicativo e a categoria definida por aplicativo no log de eventos e anexa dados binários à mensagem.

C#
public void WriteEntry (string message, System.Diagnostics.EventLogEntryType type, int eventID, short category, byte[] rawData);

Parâmetros

message
String

A cadeia de caracteres a ser gravada no log de eventos.

type
EventLogEntryType

Um dos valores de EventLogEntryType.

eventID
Int32

O identificador específico do aplicativo para o evento.

category
Int16

A subcategoria específica do aplicativo associada à mensagem.

rawData
Byte[]

Uma matriz de bytes que contém os dados binários associados à entrada.

Exceções

A propriedade Source do EventLog não foi definida.

- ou -

O método tentou registrar uma nova fonte de evento, mas o nome do computador em MachineName não é válido.

- ou -

A origem já está registrada para um log de eventos diferente.

- ou -

eventID é menor que zero ou maior que UInt16.MaxValue.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

C#
// Create the source, if it does not already exist.
string myLogName = "myNewLog";
if(!EventLog.SourceExists("MySource"))
{
   // An event log source should not be created and immediately used.
   // There is a latency time to enable the source, it should be created
   // prior to executing the application that uses the source.
   // Execute this sample a second time to use the new source.
   EventLog.CreateEventSource("MySource", myLogName);
   Console.WriteLine("Created EventSource");
   Console.WriteLine("Exiting, execute the application a second time to use the source.");
   return;
}
else
   {
       myLogName = EventLog.LogNameFromSourceName("MySource",".");
   }
   // Create an EventLog and assign source.
   EventLog myEventLog = new EventLog();
myEventLog.Source = "MySource";
myEventLog.Log = myLogName;

// Set the 'description' for the event.
string myMessage = "This is my event.";
EventLogEntryType myEventLogEntryType = EventLogEntryType.Warning;
int myApplicatinEventId = 1100;
short myApplicatinCategoryId = 1;

// Set the 'data' for the event.
byte[] myRawData = new byte[4];
for(int i=0;i<4;i++)
{
   myRawData[i]=1;
}
// Write the entry in the event log.
Console.WriteLine("Writing to EventLog.. ");
myEventLog.WriteEntry(myMessage,myEventLogEntryType,
   myApplicatinEventId, myApplicatinCategoryId, myRawData);

Comentários

Use essa sobrecarga para gravar dados específicos de eventos definidos pelo aplicativo no log de eventos. O Visualizador de Eventos não interpreta esses dados; ele exibe dados brutos apenas em um formato hexadecimal e de texto combinados. Use dados específicos do evento com moderação, incluindo-os somente se tiver certeza de que será útil para alguém depurar o problema. Você também pode usar dados específicos do evento para armazenar informações que o aplicativo pode processar independentemente do Visualizador de Eventos. Por exemplo, você pode escrever um visualizador especificamente para seus eventos ou escrever um programa que examina o arquivo de log e cria relatórios que incluem informações dos dados específicos do evento.

Além dos dados binários, você pode especificar uma categoria definida pelo aplicativo e um identificador de evento definido pelo aplicativo. O Visualizador de Eventos usa a categoria para filtrar eventos gravados por uma origem do evento. O Visualizador de Eventos pode exibir a categoria como um valor numérico ou pode usar a categoria como um identificador de recurso para exibir uma cadeia de caracteres de categoria localizada.

Nota

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos a trata como uma cadeia de caracteres de inserção. Como um endereço IPv6 (protocolo IPv6) versão 6 pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Nota

O category parâmetro deve ser um valor positivo. Os valores de categoria negativos aparecem como um número positivo complementar na Visualizador de Eventos. Por exemplo, um -10 aparece como 65.526, um -1 como 65.535.

Para exibir cadeias de caracteres de categoria localizadas no Visualizador de Eventos, você deve usar uma origem de evento configurada com um arquivo de recurso de categoria e definir o category como um identificador de recurso no arquivo de recurso de categoria. Se a origem do evento não tiver um arquivo de recurso de categoria configurado ou se o especificado category não indexar uma cadeia de caracteres no arquivo de recurso de categoria, o Visualizador de Eventos exibirá o valor da categoria numérica para essa entrada. Configure o arquivo de recurso de categoria, juntamente com o número de cadeias de caracteres de categoria no arquivo de recurso, usando a EventLogInstaller classe ou EventSourceCreationData .

Os identificadores de evento, juntamente com a origem do evento, identificam exclusivamente um evento. Cada aplicativo pode definir seus próprios eventos numerados e as cadeias de caracteres de descrição para as quais eles mapeiam. Os visualizadores de eventos exibem esses valores de cadeia de caracteres para ajudar o usuário a entender o que deu errado e sugerir quais ações tomar.

Por fim, você pode especificar um EventLogEntryType para o evento que está sendo gravado no log de eventos. O type é indicado por um ícone e texto na coluna Tipo no Visualizador de Eventos para um log. Esse parâmetro indica se o tipo de evento é erro, aviso, informações, auditoria de êxito ou auditoria de falha.

Você deve definir a Source propriedade em seu EventLog componente antes de poder gravar entradas no log. Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem.

Create a nova origem do evento durante a instalação do aplicativo. Isso permite que o sistema operacional atualize sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova origem do evento.

Se a origem especificada na Source propriedade dessa EventLog instância não estiver registrada no computador no qual o componente está gravando, WriteEntry chamará CreateEventSource e registrará a origem.

Nota

Se você não especificar um MachineName para sua EventLog instância antes de chamar CreateEventSource ou WriteEntry, o computador local (".") será assumido.

Se o sistema precisar registrar o Source por meio de uma chamada para WriteEntry e a Log propriedade não tiver sido definida em sua EventLog instância, o log usará como padrão o log do aplicativo.

Nota

Muitas exceções listadas acima são geradas por erros gerados durante o processo de registro do Source.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e, em seguida, use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se você gravar uma entrada em um computador remoto, o valor da mensagem (a cadeia de caracteres de texto) poderá não ser o esperado se o computador remoto não estiver executando o .NET Framework.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

WriteEntry(String, String, EventLogEntryType, Int32)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava uma entrada com o texto da mensagem especificado e o identificador de evento definido pelo aplicativo no log de eventos, usando a fonte de evento registrada especificada.

C#
public static void WriteEntry (string source, string message, System.Diagnostics.EventLogEntryType type, int eventID);

Parâmetros

source
String

A fonte pela qual o aplicativo está registrado no computador especificado.

message
String

A cadeia de caracteres a ser gravada no log de eventos.

type
EventLogEntryType

Um dos valores de EventLogEntryType.

eventID
Int32

O identificador específico do aplicativo para o evento.

Exceções

O valor source é uma cadeia de caracteres vazia ("").

- ou -

O valor source é null.

- ou -

eventID é menor que zero ou maior que UInt16.MaxValue.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

C#
// Create the source, if it does not already exist.
if(!EventLog.SourceExists("MySource"))
{
   // An event log source should not be created and immediately used.
   // There is a latency time to enable the source, it should be created
   // prior to executing the application that uses the source.
   // Execute this sample a second time to use the new source.
   EventLog.CreateEventSource("MySource", "myNewLog");
   Console.WriteLine("Creating EventSource");
   Console.WriteLine("Exiting, execute the application a second time to use the source.");
   // The source is created.  Exit the application to allow it to be registered.
   return;
}

// Set the 'description' for the event.
string myMessage = "This is my event.";
EventLogEntryType myEventLogEntryType = EventLogEntryType.Warning;
int myApplicationEventId = 100;

// Write the entry in the event log.
Console.WriteLine("Writing to EventLog.. ");
EventLog.WriteEntry("MySource",myMessage,
   myEventLogEntryType, myApplicationEventId);

Comentários

Use esse método para gravar uma entrada com um aplicativo definido eventID para o log de eventos, usando uma origem já registrada como uma fonte de evento para o log apropriado. O eventID, juntamente com a origem, identifica exclusivamente um evento. Cada aplicativo pode definir seus próprios eventos numerados e as cadeias de caracteres de descrição para as quais eles mapeiam. Os visualizadores de eventos apresentam essas cadeias de caracteres ao usuário para ajudar o usuário a entender o que deu errado e sugerir quais ações tomar.

Nota

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos o trata como uma cadeia de caracteres de inserção. Como um protocolo da Internet, o endereço IPv6 (versão 6) pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Além do identificador de evento, essa sobrecarga de WriteEntry permite que você especifique um EventLogEntryType para o evento que está sendo gravado no log de eventos. O type é indicado por um ícone e texto na coluna Tipo no Visualizador de Eventos para um log. Esse parâmetro indica se o tipo de evento é erro, aviso, informações, auditoria de êxito ou auditoria de falha.

Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem. Create a nova origem do evento durante a instalação do aplicativo. Isso permite tempo para o sistema operacional atualizar sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova fonte de evento.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

WriteEntry(String, EventLogEntryType, Int32, Int16)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava uma entrada com o texto da mensagem especificado, o identificador de evento definido pelo aplicativo e a categoria definida pelo aplicativo no log de eventos.

C#
public void WriteEntry (string message, System.Diagnostics.EventLogEntryType type, int eventID, short category);

Parâmetros

message
String

A cadeia de caracteres a ser gravada no log de eventos.

type
EventLogEntryType

Um dos valores de EventLogEntryType.

eventID
Int32

O identificador específico do aplicativo para o evento.

category
Int16

A subcategoria específica do aplicativo associada à mensagem.

Exceções

A propriedade Source do EventLog não foi definida.

- ou -

O método tentou registrar uma nova fonte de evento, mas o nome do computador em MachineName não é válido.

- ou -

A origem já está registrada para um log de eventos diferente.

- ou -

eventID é menor que zero ou maior que UInt16.MaxValue.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

C#
// Create an EventLog instance and assign its source.
EventLog myLog = new EventLog();
myLog.Source = "ThirdSource";

// Write an informational entry to the event log.
Console.WriteLine("Write from third source ");
myLog.WriteEntry("Writing warning to event log.",
                  EventLogEntryType.Warning, myEventID, myCategory);

Comentários

Use esse método para gravar uma entrada com um aplicativo definido category para o log de eventos. O Visualizador de Eventos usa a categoria para filtrar eventos gravados por uma fonte de evento. O Visualizador de Eventos pode exibir a categoria como um valor numérico ou pode usar a categoria como um identificador de recurso para exibir uma cadeia de caracteres de categoria localizada.

Nota

O category parâmetro deve ser um valor positivo. Os valores de categoria negativos aparecem como um número positivo complementar no Visualizador de Eventos. Por exemplo, um -10 aparece como 65.526, um -1 como 65.535.

Nota

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos o trata como uma cadeia de caracteres de inserção. Como um protocolo da Internet, o endereço IPv6 (versão 6) pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Para exibir cadeias de caracteres de categoria localizadas no Visualizador de Eventos, você deve usar uma fonte de evento configurada com um arquivo de recurso de categoria e definir o category como um identificador de recurso no arquivo de recurso de categoria. Se a origem do evento não tiver um arquivo de recurso de categoria configurado ou o especificado category não indexar uma cadeia de caracteres no arquivo de recurso de categoria, o Visualizador de Eventos exibirá o valor da categoria numérica para essa entrada. Configure o arquivo de recurso de categoria, juntamente com o número de cadeias de caracteres de categoria no arquivo de recurso, usando a EventLogInstaller classe ou EventSourceCreationData .

Além da categoria, você pode especificar um identificador de evento para o evento que está sendo gravado no log de eventos. Os identificadores de evento, juntamente com a origem do evento, identificam exclusivamente um evento. Cada aplicativo pode definir seus próprios eventos numerados e as cadeias de caracteres de descrição para as quais eles mapeiam. Os visualizadores de eventos exibem esses valores de cadeia de caracteres para ajudar o usuário a entender o que deu errado e sugerir quais ações tomar.

Por fim, você pode especificar um EventLogEntryType para o evento que está sendo gravado no log de eventos. O type é indicado por um ícone e texto na coluna Tipo no Visualizador de Eventos para um log. Esse parâmetro indica se o tipo de evento é erro, aviso, informações, auditoria de êxito ou auditoria de falha.

Você deve definir a Source propriedade em seu EventLog componente antes de poder gravar entradas no log. Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem.

Create a nova origem do evento durante a instalação do aplicativo. Isso permite tempo para o sistema operacional atualizar sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova fonte de evento.

Se a origem especificada na Source propriedade dessa EventLog instância não estiver registrada no computador no qual o componente está gravando, WriteEntry chamará CreateEventSource e registrará a origem.

Nota

Se você não especificar um MachineName para sua EventLog instância antes de chamar CreateEventSource ou WriteEntry, o computador local (".") será assumido.

Se o sistema precisar registrar o Source por meio de uma chamada para WriteEntry e a Log propriedade não tiver sido definida em sua EventLog instância, o log usará como padrão o log do aplicativo.

Nota

Muitas exceções listadas acima são geradas por erros gerados durante o processo de registro do Source.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e, em seguida, use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se você gravar uma entrada em um computador remoto, o valor da mensagem (a cadeia de caracteres de texto) poderá não ser o esperado se o computador remoto não estiver executando o .NET Framework.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

WriteEntry(String, EventLogEntryType)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava uma entrada de erro, aviso, informação, auditoria de êxito ou auditoria de falha com o texto da mensagem fornecido no log de eventos.

C#
public void WriteEntry (string message, System.Diagnostics.EventLogEntryType type);

Parâmetros

message
String

A cadeia de caracteres a ser gravada no log de eventos.

type
EventLogEntryType

Um dos valores de EventLogEntryType.

Exceções

A propriedade Source do EventLog não foi definida.

- ou -

O método tentou registrar uma nova fonte de evento, mas o nome do computador em MachineName não é válido.

- ou -

A origem já está registrada para um log de eventos diferente.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

O exemplo a seguir grava uma entrada de aviso em um log de eventos, "MyNewLog", no computador local.

C#
using System;
using System.Diagnostics;
using System.Threading;

class MySample1
{

    public static void Main()
    {

        // Create an EventLog instance and assign its source.
        EventLog myLog = new EventLog("MyNewLog");
        myLog.Source = "MyNewLogSource";

        // Write an informational entry to the event log.
        myLog.WriteEntry("Writing warning to event log.", EventLogEntryType.Warning);
    }
}

Comentários

Use esse método para gravar uma entrada de um especificado EventLogEntryType no log de eventos. O type é indicado por um ícone e texto na coluna Tipo no Visualizador de Eventos para um log.

Nota

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos a trata como uma cadeia de caracteres de inserção. Como um endereço IPv6 (protocolo IPv6) versão 6 pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Você deve definir a Source propriedade em seu EventLog componente antes de poder gravar entradas no log. Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem.

Create a nova origem do evento durante a instalação do aplicativo. Isso permite que o sistema operacional atualize sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova origem do evento.

Se a origem especificada na Source propriedade dessa EventLog instância não estiver registrada no computador no qual o componente está gravando, WriteEntry chamará CreateEventSource e registrará a origem.

Nota

Se você não especificar um MachineName para sua EventLog instância antes de chamar CreateEventSource ou WriteEntry, o computador local (".") será assumido.

Se o sistema precisar registrar o Source por meio de uma chamada para WriteEntry e a Log propriedade não tiver sido definida em sua EventLog instância, o log usará como padrão o log do aplicativo.

Nota

Muitas exceções listadas acima são geradas por erros gerados durante o processo de registro do Source.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e, em seguida, use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se você gravar uma entrada em um computador remoto, o valor da mensagem (a cadeia de caracteres de texto) poderá não ser o esperado se o computador remoto não estiver executando o .NET Framework.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

WriteEntry(String, EventLogEntryType, Int32)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava no log de eventos uma entrada com o texto da mensagem especificado e o identificador de evento definido pelo aplicativo.

C#
public void WriteEntry (string message, System.Diagnostics.EventLogEntryType type, int eventID);

Parâmetros

message
String

A cadeia de caracteres a ser gravada no log de eventos.

type
EventLogEntryType

Um dos valores de EventLogEntryType.

eventID
Int32

O identificador específico do aplicativo para o evento.

Exceções

A propriedade Source do EventLog não foi definida.

- ou -

O método tentou registrar uma nova fonte de evento, mas o nome do computador em MachineName não é válido.

- ou -

A origem já está registrada para um log de eventos diferente.

- ou -

eventID é menor que zero ou maior que UInt16.MaxValue.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

C#
// Create an EventLog instance and assign its source.
EventLog myLog = new EventLog();
myLog.Source = "ThirdSource";

// Write an informational entry to the event log.
Console.WriteLine("Write from third source ");
myLog.WriteEntry("Writing warning to event log.",
                  EventLogEntryType.Warning, myEventID, myCategory);

Comentários

Use esse método para gravar uma entrada com um aplicativo definido eventID no log de eventos. O eventID junto com a origem identifica exclusivamente um evento. Cada aplicativo pode definir seus próprios eventos numerados e as cadeias de caracteres de descrição para as quais eles mapeiam. Os visualizadores de eventos exibem esses valores de cadeia de caracteres para ajudar o usuário a entender o que deu errado e sugerir quais ações tomar.

Nota

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos a trata como uma cadeia de caracteres de inserção. Como um endereço IPv6 (protocolo IPv6) versão 6 pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Além do identificador de evento, você pode especificar um EventLogEntryType para o evento que está sendo gravado no log de eventos. O type é indicado por um ícone e texto na coluna Tipo no Visualizador de Eventos para um log. Esse parâmetro indica se o tipo de evento é erro, aviso, informações, auditoria de êxito ou auditoria de falha.

Você deve definir a Source propriedade em seu EventLog componente antes de poder gravar entradas no log. Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem.

Create a nova origem do evento durante a instalação do aplicativo. Isso permite que o sistema operacional atualize sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova origem do evento.

Se a origem especificada na Source propriedade dessa EventLog instância não estiver registrada no computador no qual o componente está gravando, WriteEntry chamará CreateEventSource e registrará a origem.

Nota

Se você não especificar um MachineName para sua EventLog instância antes de chamar CreateEventSource ou WriteEntry, o computador local (".") será assumido.

Se o sistema precisar registrar o Source por meio de uma chamada para WriteEntry e a Log propriedade não tiver sido definida em sua EventLog instância, o log usará como padrão o log do aplicativo.

Nota

Muitas exceções listadas acima são geradas por erros gerados durante o processo de registro do Source.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e, em seguida, use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se você gravar uma entrada em um computador remoto, o valor da mensagem (a cadeia de texto) pode não ser o esperado se o computador remoto não estiver executando o .NET Framework.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

WriteEntry(String, String)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava uma entrada de tipo de informação com o texto da mensagem especificado no log de eventos usando a origem do evento registrada especificada.

C#
public static void WriteEntry (string source, string message);

Parâmetros

source
String

A fonte pela qual o aplicativo está registrado no computador especificado.

message
String

A cadeia de caracteres a ser gravada no log de eventos.

Exceções

O valor source é uma cadeia de caracteres vazia ("").

- ou -

O valor source é null.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

O exemplo a seguir cria a origem MySource se ela ainda não existir e grava uma entrada no log de eventos MyNewLog.

C#
using System;
using System.Diagnostics;
using System.Threading;

class MySample
{

    public static void Main()
    {

        // Create the source, if it does not already exist.
        if (!EventLog.SourceExists("MySource"))
        {
            // An event log source should not be created and immediately used.
            // There is a latency time to enable the source, it should be created
            // prior to executing the application that uses the source.
            // Execute this sample a second time to use the new source.
            EventLog.CreateEventSource("MySource", "myNewLog");
            Console.WriteLine("CreatingEventSource");
            Console.WriteLine("Exiting, execute the application a second time to use the source.");
            // The source is created.  Exit the application to allow it to be registered.
            return;
        }

        // Write an informational entry to the event log.
        EventLog.WriteEntry("MySource", "Writing to event log.");
    }
}

Comentários

Use esse método para gravar uma entrada de informações no log de eventos, usando uma origem que já está registrada como uma fonte de evento para o log apropriado. Se você quiser especificar qualquer outro EventLogEntryType, use uma sobrecarga diferente de WriteEntry.

Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem. Create a nova origem do evento durante a instalação do aplicativo. Isso permite tempo para o sistema operacional atualizar sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova fonte de evento.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos o trata como uma cadeia de caracteres de inserção. Como um protocolo da Internet, o endereço IPv6 (versão 6) pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

WriteEntry(String)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava uma entrada de tipo de informação, com o texto da mensagem fornecido, no log de eventos.

C#
public void WriteEntry (string message);

Parâmetros

message
String

A cadeia de caracteres a ser gravada no log de eventos.

Exceções

A propriedade Source do EventLog não foi definida.

- ou -

O método tentou registrar uma nova fonte de evento, mas o nome do computador em MachineName não é válido.

- ou -

A origem já está registrada para um log de eventos diferente.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

O exemplo a seguir cria a origem MySource se ela ainda não existir e grava uma entrada no log de eventos MyNewLog.

C#
using System;
using System.Diagnostics;
using System.Threading;

class MySample{

    public static void Main(){

        // Create the source, if it does not already exist.
        if(!EventLog.SourceExists("MySource"))
        {
             //An event log source should not be created and immediately used.
             //There is a latency time to enable the source, it should be created
             //prior to executing the application that uses the source.
             //Execute this sample a second time to use the new source.
            EventLog.CreateEventSource("MySource", "MyNewLog");
            Console.WriteLine("CreatedEventSource");
            Console.WriteLine("Exiting, execute the application a second time to use the source.");
            // The source is created.  Exit the application to allow it to be registered.
            return;
        }

        // Create an EventLog instance and assign its source.
        EventLog myLog = new EventLog();
        myLog.Source = "MySource";

        // Write an informational entry to the event log.
        myLog.WriteEntry("Writing to event log.");
    }
}

Comentários

Use esse método para gravar uma entrada de informações no log de eventos associado a essa EventLog instância. Se você quiser especificar qualquer outro EventLogEntryType, use uma sobrecarga diferente de WriteEntry.

Nota

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos o trata como uma cadeia de caracteres de inserção. Como um protocolo da Internet, o endereço IPv6 (versão 6) pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Você deve definir a Source propriedade em seu EventLog componente antes de poder gravar entradas no log. Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem.

Create a nova origem do evento durante a instalação do aplicativo. Isso permite tempo para o sistema operacional atualizar sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova fonte de evento.

Se a origem especificada na Source propriedade dessa EventLog instância não estiver registrada no computador no qual o componente está gravando, WriteEntry chamará CreateEventSource e registrará a origem.

Nota

Se você não especificar um MachineName para sua EventLog instância antes de chamar CreateEventSource ou WriteEntry, o computador local (".") será assumido.

Se o sistema precisar registrar o Source por meio de uma chamada para WriteEntry e a Log propriedade não tiver sido definida em sua EventLog instância, o log usará como padrão o log do aplicativo.

Nota

Muitas das exceções listadas acima são geradas por erros gerados durante o processo de registro do Source.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se você gravar uma entrada em um computador remoto, o valor da mensagem (a cadeia de texto) pode não ser o esperado se o computador remoto não estiver executando o .NET Framework.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

WriteEntry(String, String, EventLogEntryType)

Origem:
EventLog.cs
Origem:
EventLog.cs
Origem:
EventLog.cs

Grava uma entrada de erro, aviso, informação, auditoria de êxito ou auditoria de falha com o texto da mensagem fornecido no log de eventos, usando a origem do evento registrado especificado.

C#
public static void WriteEntry (string source, string message, System.Diagnostics.EventLogEntryType type);

Parâmetros

source
String

A fonte pela qual o aplicativo está registrado no computador especificado.

message
String

A cadeia de caracteres a ser gravada no log de eventos.

type
EventLogEntryType

Um dos valores de EventLogEntryType.

Exceções

O valor source é uma cadeia de caracteres vazia ("").

- ou -

O valor source é null.

- ou -

A cadeia de caracteres da mensagem tem mais de 31.839 bytes (32.766 em sistemas operacionais Windows anteriores ao Windows Vista).

- ou -

O nome da origem resulta em um caminho de chave do Registro com mais de 254 caracteres.

Não foi possível abrir a chave do Registro para o log de eventos.

O sistema operacional relatou um erro ao gravar a entrada de evento no log de eventos. Um código de erro do Windows não está disponível.

Exemplos

O exemplo a seguir grava uma entrada de aviso em um log de eventos, "MyNewLog", no computador local.

C#
using System;
using System.Diagnostics;
using System.Threading;

class MySample2
{

    public static void Main()
    {

        // Write an informational entry to the event log.
        EventLog.WriteEntry("MySource",
            "Writing warning to event log.",
            EventLogEntryType.Warning);
    }
}

Comentários

Use esse método para gravar uma entrada de um especificado EventLogEntryType no log de eventos, usando uma origem já registrada como uma fonte de evento para o log apropriado. O type é indicado por um ícone e texto na coluna Tipo no Visualizador de Eventos para um log.

Nota

A message cadeia de caracteres não pode conter %n, em que n é um valor inteiro (por exemplo, %1), porque o visualizador de eventos o trata como uma cadeia de caracteres de inserção. Como um protocolo da Internet, o endereço IPv6 (versão 6) pode conter essa sequência de caracteres, você não pode registrar uma mensagem de evento que contenha um endereço IPv6.

Você deve criar e configurar a origem do evento antes de gravar a primeira entrada com a origem. Create a nova origem do evento durante a instalação do aplicativo. Isso permite que o sistema operacional atualize sua lista de fontes de eventos registradas e sua configuração. Se o sistema operacional não tiver atualizado sua lista de fontes de eventos e você tentar gravar um evento com a nova origem, a operação de gravação falhará. Você pode configurar uma nova fonte usando um EventLogInstallerou usando o CreateEventSource método . Você deve ter direitos administrativos no computador para criar uma nova origem do evento.

A origem deve ser configurada para gravar entradas localizadas ou para gravar cadeias de caracteres diretas. O WriteEntry método grava a cadeia de caracteres fornecida diretamente no log de eventos; ele não usa um arquivo de recurso de mensagem localizável. Use o WriteEvent método para gravar eventos usando um arquivo de recurso de mensagem localizado.

Se o aplicativo gravar entradas usando identificadores de recurso e valores de cadeia de caracteres, você deverá registrar duas fontes separadas. Por exemplo, configure uma fonte com arquivos de recurso e, em seguida, use essa origem WriteEvent no método para gravar entradas usando identificadores de recurso no log de eventos. Em seguida, crie uma fonte diferente sem arquivos de recurso e use essa origem WriteEntry no método para gravar cadeias de caracteres diretamente no log de eventos usando essa origem.

Nota

Se o message parâmetro contiver um caractere NUL, a mensagem no log de eventos será encerrada no caractere NUL.

Confira também

Aplica-se a

.NET Framework 4.8.1 e outras versões
Produto Versões
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9