Escrevendo no EventView


por Mauricio Junior em 1/1/2011 0

        Olá pessoal, hoje gostaria de mostrar e falar como escrever log no eventview do Windows usando a linguagem C#.NET. São dois métodos simples, pois eu crio um novo item junto do event view, ficando assim mais um item na tela de evento.
Usado:
Linguagem C#.NET
Ferramenta: Visual Studio .NET
Tipo da plataforma: Classe geral


Figura 1

        O item marcado Transferir Arquivos foi criado pelo código. Então vamos lá!
O primeiro método chamado EscreverLog passa quatro parâmetros do tipo string e EventLogEntryType.
        No caso deste artigo, vou mostrar o método que verifica se foi passado o nome do diretório (Transferir Arquivos), por exemplo, se não for passado o nome do diretório o log será gravado dentro do item (Aplicativo) conforme mostrado na figura 1. Code 1

public static void EscreverLog(string source, string logName, string message, EventLogEntryType type) 
        {
            if (String.IsNullOrEmpty(source)) 
            {
                throw (new ArgumentException(Resources.NullOrEmptyValue, "source"));
            }

            if (String.IsNullOrEmpty(message))
            {
                throw (new ArgumentException(Resources.NullOrEmptyValue, "message"));
            }

            EventLogWriter.VerificaDiretorio(source, logName);

            EventLog.WriteEntry(source, message, type);
        }
Code 1

        Note que na penúltima linha, existe um método chamado VerificaDiretorio(source, logName). Esse método verifica se a string logName é igual a null. Se for igual a null, ele grava o log dentro do item Application ou Aplicativo, se não for igual a null ele cria um item (como se fosse um diretório) dentro do event view de acordo com o nome passado.  O código 2 mostra como é feito. Code 2.


private static void VerificaDiretorio(string source, string logName)
        {
            if (String.IsNullOrEmpty(logName))
            {
                logName = "Application";
            }

            if (!EventLog.SourceExists(source))
            {
                EventSourceCreationData sourceData = new EventSourceCreationData(source, logName);

                EventLog.CreateEventSource(sourceData);
            }
        }

Code 2.

        Criei um outro método público chamado EscreverErro com apenas dois parâmetros de entrada, isso significa que, o evento será gravado dentro do item padrão do event view. Ele não cria um novo item, apenas registra. Com estes métodos você pode usar um ou outro dependendo da sua necessidade. Code 3.


public static void EscreverErro(string source, string message) 
        {
            EventLogWriter.Write(source, null, message, EventLogEntryType.Error);
        }

Code 3.
        Lembro que no código 1, o último parâmetro é do tipo EventLogEntryType que identifica o ícone de registro.  Outra dica importante é, coloque no início da sua classe o using System.Diagnostics. É necessário para entender o EventLogEntry.
 
Espero que tenham gostado e qualquer dúvida pode entrar em contato. 

voltar   comente  subir

 
Mauricio Junior Formado pela Faculdade Anhanguera, Especialista pela FGV (Fundação Getúlio Vargas), Pós-Graduação em Docência Superior e cursando Mestrado na UNB Engenharia Elétrica; .
Tenho 29 anos e possuo sete livros publicados pela editora Ciência Moderna. Sou Certificado Microsoft MCP, MCAD e MVP, faço parte da comunidade ASPNETI.COM, ECODE10.COM, onde publico artigos, vídeos, ebooks e livros Publico artigos, vídeos e podcast em outras comunidades. Trabalho como Analista de Sistemas / Desenvolvedor na empresa ATP S/A. Blog: blog.mauriciojunior.org, Site pessoal www.mauriciojunior.org



Comentários:

Comente (dê sua opinião):
Comentário:
Código Imagem:  (digite o código da imagem respeitando maiúsculo e minúsculo)

Favor digitar o código da imagem para cadastramento.

 

Outros Artigos do Autor

Criando arquivo usando Visual Studio.NET 2005
Download grátis - Sistema de Controle de Combustível
Trabalhando bem com o “using”
Novo AjaxControlToolkit e Visual Studio 11
Usando PopupControlExtender
Visual Studio 11 – Melhorias e inovações parte 5
Windows 7
Armazenando Dados no ViewState Parte II
SQL Dinâmico Compilado
Orientação a Objetos - Microsoft PetShop 3.0
Montando Menu Dinâmico com Banco de Dados
Alongar é preciso
Gerando word com Visual Studio.NET 2005
Chart - novo componente integrado Visual Studio .NET 2010
Acessibilidade
II Encontro - Um Sucesso!!! (em Brasília)
WebServices usando soapHeader
Token e Sessão Corrente com C#.NET
Escrevendo no EventView
Trabalhando com STORED PROCEDURE
Visual SourceSafe - Série 5
Vídeo - Mostrando um sistema com pocket pc
Ophone The Microsoft - Vídeo
Encontrar o valor no texto
Visual SourceSafe - Série 3
Microsoft Mobile Explorer 3.0
Windows Phone 7.1 Mango
Windows Phone 7, nada como aprender vendo
Criando menu dinâmico com C#.NET (Passo 2) - Com diferenciação de usuário
Trabalhando com ENUM
Criando, utilizando e agendando sistema de backup
Adicionar uma coluna em um DataTable
Usando Tooltip
Deixando o rodapé fixo
Zune