ZC:下面3个在 日志模块中可以搜索到
1、
/// <summary> /// 初始化跟踪类数据 /// </summary> /// <param name="initParam">初始化参数</param> public static void Start(TraceInitParam initParam) { // 初始化 _logManage.Start(initParam); try { //处理未捕获的异常,始终将异常传送到 ThreadException 处理程序。忽略应用程序配置文件。 Application.SetUnhandledExceptionMode(UnhandledExceptionMode.CatchException); //订阅ThreadException事件,处理UI线程异常,处理方法为 Application_ThreadException,关于事件的相关知识就不在这叙述了 Application.ThreadException += Application_ThreadException; //订阅UnhandledException事件,处理非UI线程异常 ,处理方法为 CurrentDomain_UnhandledException AppDomain.CurrentDomain.UnhandledException += CurrentDomain_UnhandledException; // 订阅 Wpf 的异常事件 if (System.Windows.Application.Current != null) System.Windows.Application.Current.DispatcherUnhandledException += Current_DispatcherUnhandledException; } catch (Exception ex) { _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "########", ex); } }
2、
#region # 输出异常消息 # /// <summary> /// 输出异常消息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> static void Current_DispatcherUnhandledException(object sender, System.Windows.Threading.DispatcherUnhandledExceptionEventArgs e) { _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "########", e); _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "########", e.Exception.Message); _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "########", e.Exception.StackTrace + "\r\n"); } /// <summary> /// 输出异常消息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> static void CurrentDomain_UnhandledException(object sender, UnhandledExceptionEventArgs e) { _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "********", e.ToString()); _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "********", e.ExceptionObject); if (e.ExceptionObject is Exception) _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "********", ((Exception)e.ExceptionObject).StackTrace + "\r\n"); } /// <summary> /// 输出异常消息 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> static void Application_ThreadException(object sender, ThreadExceptionEventArgs e) { _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "$$$$$$$$", e); _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "$$$$$$$$", e.Exception.Message); _logManage.TraceSaveCriticalFile(TraceEventType.Critical, "$$$$$$$$", e.Exception.StackTrace + "\r\n"); } #endregion
3、
4、
5、