public static void WriteOnEventViewer(string message, params string[] msg) { var logs = "C:\\logs\\its\\excecoes"; string sSource = "ITSolution.Framework"; try { if (!EventLog.SourceExists(sSource)) { EventLog.CreateEventSource(sSource, "ITE.Forms"); } EventLog MyEventLog = new EventLog(); MyEventLog.Source = sSource; // Id do Evento int eventID = 3300; // Categoria do Evento short categoriaID = 16; // Tipo do Erro EventLogEntryType typeEntry = EventLogEntryType.Information; MyEventLog.WriteEntry(message, typeEntry, eventID, categoriaID); } catch (Exception e) { FileManagerIts.AppendTextFileException(logs + @"\\eventViewLogFail.txt", e, msg);; } }
public static CentroCusto GetCentroCustoVenda() { using (var ctx = new BalcaoContext()) { string codigo = TypeParametro.centro_custo_venda.ToString(); try { Parametro param = ctx.ParametroDao.Where( c => c.CodigoParametro == codigo) .First(); var cc = ctx.CentroCustoDao.Find(ParseUtil.ToInt(param.ValorParametro)); return(cc); } catch (Exception ex) { string msg = "Falha ao localizar o centro de custo da venda"; FileManagerIts.AppendTextFileException(@"C:\Logs\its\excecoes\" + ex.GetType().ToString() + ".txt", ex); throw new Exception(msg); } } }
/// <summary> /// Log no arquivo de log /// </summary> /// <param name="ex"></param> public static void GenerateLogs(Exception ex, params string[] msg) { var logs = "C:\\logs\\its\\excecoes"; var fileName = logs + "\\" + ex.GetType() + "-" + DateTime.Now.ToString("dd-MM-yyyy") + ".txt"; FileManagerIts.CreateDirectory(logs); File.Delete(fileName); FileManagerIts.AppendTextFileException(fileName, ex, msg);; WriteOnEventViewer(ex, msg); }
/// <summary> /// Log no arquivo de log /// </summary> /// <param name="ex"></param> public static void GenerateLogs(Exception ex) { var logs = "C:\\logs\\its\\excecoes"; var fileName = logs + "\\" + ex.GetType() + "-" + DateTime.Now.ToString("dd-MM-yyyy-HH-mm-ss") + ".txt"; FileManagerIts.CreateDirectory(logs); //esreve ou concatena o log FileManagerIts.AppendTextFileException(fileName, ex); //escrever no eventviewer.. gercy campos, em 30/06/2017 WriteOnEventViewer(ex, "Exceção lançãda!\nContate o administrador."); }
private static void WriteOnEventViewer(Exception ex, params string[] msg) { var logs = "C:\\logs\\its\\excecoes"; string sSource = "ITSolution.Framework"; var inner = ex.InnerException == null ? "Nenhuma exceção interna" : ex.InnerException.Message + ""; var msgLog = "\nMensagem: " + ex.Message + "\n" + "Classe: " + ex.GetType() + "\n" + "Exceção interna: " + inner + "\n" + "=>: " + inner + "\n" + "Pilha de erros: " + ex.StackTrace + "\n"; try { if (!EventLog.SourceExists(sSource)) { EventLog.CreateEventSource(sSource, "ITE.Forms"); } EventLog MyEventLog = new EventLog(); MyEventLog.Source = sSource; // Id do Evento int eventID = 3300; // Categoria do Evento short categoriaID = 16; // Tipo do Erro EventLogEntryType typeEntry = EventLogEntryType.Error; MyEventLog.WriteEntry(msgLog, typeEntry, eventID, categoriaID); } catch (Exception e) { FileManagerIts.AppendTextFileException(logs + @"\\eventViewLogFail.txt", e, msg);; } }
/// <summary> /// Gera um mensagem gráfica com os dados da exceção. /// </summary> /// <param colName="ex"></param> public DebugDao(Exception ex, T t, bool errorMessage = true) : base(ex.Message) { var type = ex.GetType(); var classe = t.GetType(); //Logs string dirLogDao = @"C:\logs\its\dao"; string title = "Relatório de logs\n"; string excecao = "Erros de persistência: " + type; string entity = "\nClasse de ocorrência: " + classe; string data = DateTime.Now.ToString("dd-MM-yyyy-HH-mm-ss"); var inner = ex.InnerException == null ? "Nenhuma exceção interna" : ex.InnerException.Message + ""; //Uso o método Write para escrever o arquivo que será adicionado no arquivo texto string msg = "Mensagem: " + ex.Message + "\n" + "Pilha de erros: " + ex.StackTrace + "\n" + "Exceção interna: " + inner; var fileName = type + "-" + data + ".txt"; var pathLog = Path.Combine(dirLogDao, fileName); //cria o dir FileManagerIts.CreateDirectory(dirLogDao); //write logs FileManagerIts.AppendTextFileException(pathLog, ex, new string[] { title, excecao, entity, data, msg }); //exibe o log na saida padrao LoggerUtilIts.ShowExceptionLogs(ex); if (errorMessage) { //avisa do erro XMessageIts.ExceptionJustMessage(ex, null, "Falha crítica no banco de dados"); } }
/// <summary> /// Exibe somente a mensagem que a exceção lançou e gera log da execeção. /// </summary> /// <param name="ex"></param> /// <param name="message"></param> /// <param name="title"></param> public static void ExceptionMessageDetails(Exception ex, string message, string title = null) { if (ex == null) { ex = new Exception(); } var split = (ex.Message + "").Split('.'); var newMsg = ""; foreach (var item in split) { newMsg += item + "\n"; } string msg = string.Format("{0}\n{1}\n{2}", message, newMsg, "Verifique o arquivo de logs na pasta its"); var logs = "C:\\logs\\its\\excecoes"; FileManagerIts.CreateDirectory(logs); FileManagerIts.AppendTextFileException(logs + "\\" + ex.GetType() + "-" + DateTime.Now.ToString("dd-MM-yyyy") + ".txt", ex); MessageBoxException.ShowException(message, ex, title); }