PROCEDIMENTOS: Gravar um log de eventos usando o C# .NET

Traduções deste artigo Traduções deste artigo
ID do artigo: 307024 - Exibir os produtos aos quais esse artigo se aplica.
Este artigo foi publicado anteriormente em BR307024
Expandir tudo | Recolher tudo

Neste artigo

Sumário

Este artigo explica como adicionar suas próprias entradas ao log de eventos do sistema operacional usando o Microsoft .NET Framework.

Requisitos

A lista a seguir descreve as recomendações de hardware, software, infra-estrutura de rede e service packs necessários:
  • Microsoft Windows 2000 Professional, Windows 2000 Server, Windows 2000 Advanced Server ou Windows NT 4.0 Server
  • Microsoft Visual Studio .NET

Gravar um log de eventos

A criação de log de eventos oferece uma maneira padrão e centralizada para os aplicativos registrarem eventos de software e hardware importantes. O Windows fornece uma interface de usuário padrão para exibir logs, o Visualizar eventos. Usando o componente EventLog de tempo de execução do idioma comum, você poderá conectar-se facilmente aos logs de evento existentes nos computadores locais e remotos, além de gravar entradas nesses logs. Você também pode ler entradas nos logs existentes e criar seus próprios logs de eventos personalizados. Resumindo, gravar um log de eventos envolve somente algumas etapas de criação de um aplicativo de exemplo:
  1. Abra o Visual Studio .NET
  2. Crie um novo aplicativo de console no Microsoft C#. O Visual C# .NET cria uma classe pública para você, juntamente com um método Main() vazio.
  3. Certifique-se de que o projeto faz referência, pelo menos, ao System.dll.
  4. Use a diretiva using nos espaços para nome System e System.Diagnostics para que você não precise qualificar declarações nesses espaços para nome posteriormente no código. É necessário usar essas instruções antes de qualquer declaração.
    using System;
    using System.Diagnostics;
  5. Para gravar um log de eventos, você precisará de várias informações: a mensagem, o nome do log que deseja gravar (que será criado se ele ainda não existir) e uma seqüência de caracteres que represente a origem do evento. Uma determinada origem só pode ser registrada com um único log de eventos. Portanto, se você deseja gravar mensagens em mais de um log, precisará definir várias origens.
    string sSource;
    string sLog;
    string sEvent;
    
    sSource = "dotNET Sample App";
    sLog = "Application";
    sEvent = "Sample Event";
  6. Reunidas essas informações, a primeira etapa será usar dois métodos estáticos da classe EventLog para verificar antes de mais nada se a origem existe e, caso não exista, criar essa origem associada a um log de eventos específico. Se o nome do log especificado não existir, ele será criado automaticamente quando você gravar a primeira entrada nele. Se você não fornecer um nome de log ao método CreateEventSource, o padrão será o log Application.
    if (!EventLog.SourceExists(sSource))
    	EventLog.CreateEventSource(sSource,sLog);
  7. Para gravar uma mensagem em um log de eventos, você poderá usar o método estático EventLog.WriteEntry que tem várias versões sobrecarregadas diferentes. O método mais simples, que utiliza uma seqüência de caracteres de origem e a mensagem, e um dos métodos mais complexos que oferece suporte à especificação da identificação e do tipo de evento, são mostrados no código abaixo.
    EventLog.WriteEntry(sSource,sEvent);
    EventLog.WriteEntry(sSource, sEvent, EventLogEntryType.Warning,  234);
  8. Salve e executo o código. Em seguida, verifique o log Application no recurso Visualizar eventos para ver os novos eventos.

Listagem de códigos completa

using System;
using System.Diagnostics;

namespace WriteToAnEventLog_csharp
{
	/// <summary>
	/// Summary description for Class1.
	/// </summary>
	class Class1
	{
		static void Main(string[] args)
		{
			string sSource;
			string sLog;
			string sEvent;

			sSource = "dotNET Sample App";
			sLog = "Application";
			sEvent = "Sample Event";

			if (!EventLog.SourceExists(sSource))
				EventLog.CreateEventSource(sSource,sLog);

			EventLog.WriteEntry(sSource,sEvent);
			EventLog.WriteEntry(sSource, sEvent,
				EventLogEntryType.Warning, 234);
		}
	}
}
<BR/>
<BR/>



Propriedades

ID do artigo: 307024 - Última revisão: quarta-feira, 9 de abril de 2003 - Revisão: 1.0
A informação contida neste artigo aplica-se a:
  • Microsoft Visual C# .NET 2002 Standard Edition
Palavras-chave: 
kbhowto kbhowtomaster KB307024

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com