pcclrocks 0 Denunciar post Postado Outubro 14, 2010 Ola a todos. Quero fazer um log para ser enviado por mail. Nesse log vão ser enviados os erros da console application durante a sua execução. Eu estou obrigado a usa o Enterprise Library 5.0, que é bem diferente do 4.0, devido a ser usado de forma diferente e ter um visual diferente. Existe pouca informação sobre o 5.0, e tuturias (5.0) não vi nenhum. Nunca usei o Enterprise Library, mas o que tem de ser será! Já criei o Text Formater, o Email Trace Listener e o Event Log Listener e gravei. E agora??? Referências para o 5.0: Microsoft.Practices.EnterpriseLibrary.Common Microsoft.Practices.EnterpriseLibrary.ExceptionHandling Microsoft.Practices.EnterpriseLibrary.Logging falta alguma ou já estão a mais? Adicionei o ficheiro .config gerado ao meu projeto C#, a ver se descubro alguma coisa. Agradeço qualquer dica. Compartilhar este post Link para o post Compartilhar em outros sites
pcclrocks 0 Denunciar post Postado Outubro 14, 2010 Consegui!!!! Tática do tentativa erro... Abri o enterprise library configuration e abri o meu app.config. Criei um text formater e deixei-o assim: Timestamp: {timestamp}{newline} {dictionary({key} {value})} adicionei um Roling Flat Trace Listener e configurei a meu gosto. dei um nome ao *.log, tamanho 10000kb e File exists behavior: increment. No visual studio: adicionei as referencias: Microsoft.Practices.EnterpriseLibrary.Common Microsoft.Practices.EnterpriseLibrary.Logging Microsoft.Practices.EnterpriseLibrary.ObjectBuilder criei uma class logging.cs using System; using System.Collections.Generic; using System.Linq; using System.Text; using Microsoft.Practices.EnterpriseLibrary.Common; using Microsoft.Practices.EnterpriseLibrary.Logging; using Microsoft.Practices.EnterpriseLibrary.Logging.ExtraInformation; using Microsoft.Practices.EnterpriseLibrary.Logging.Filters; namespace meuprojeto { class Logging { public static void WriteToLogError(Exception Ex, string AuxMessage) { Dictionary<string, object> dictionary = new Dictionary<string, object>(); dictionary.Add("Method: ", ((System.Reflection.MemberInfo)(Ex.TargetSite)).Name + Environment.NewLine); dictionary.Add("LineError: ", Ex.StackTrace + Environment.NewLine); dictionary.Add("ErrorMessage: ", Ex.Message + Environment.NewLine); dictionary.Add("AuxMessage: ", AuxMessage + Environment.NewLine); LogEntry logEntry = new LogEntry(); Logger.Write("", dictionary); } } mais facil do que pensava agora é só enviar o ficheiro log por mail. espero que isto ajude alguem. Abraços Compartilhar este post Link para o post Compartilhar em outros sites