Rod*_*ler 73 c# error-logging error-reporting
我正在从C++编码切换到C#.我需要用C#中类似的东西替换我的C++错误日志/报告宏系统.
在我的C++源代码中,我可以写
LOGERR("有些错误"); 或LOGERR("输入%s和%d出错",stringvar,intvar);
宏和支持库代码然后将(可能是varargs)格式化的消息与源文件,源代码行,用户名和时间一起传递到数据库中.相同的数据也被填充到数据结构中,以便稍后向用户报告.
有没有人有C#代码片段或指向执行此基本错误报告/日志记录的示例的指针?
编辑: 当我问这个问题时,我对.NET很陌生,并且不知道System.Diagnostics.Trace.System.Diagnostics.Trace是我当时需要的.从那以后,我在日志记录要求更大,更复杂的项目中使用了log4net.只需编辑500行XML配置文件,log4net即可完成您需要的所有内容:)
Chr*_*s S 72
很多log4net都支持这里,所以我相信这会被忽略,但我会添加自己的偏好:
System.Diagnostics.Trace
Run Code Online (Sandbox Code Playgroud)
这包括监听您的Trace()方法的侦听器,然后写入日志文件/输出窗口/事件日志,包含的框架中的那些DefaultTraceListener,TextWriterTraceListener以及EventLogTraceListener.它允许您指定级别(警告,错误,信息)和类别.
MSDN上的跟踪类
写入Web应用程序中的事件日志
UdpTraceListener - 将log4net兼容的XML消息写入日志查看器,例如log2console
即使我个人讨厌它,log4net似乎也是C#日志记录的事实标准.样品用法:
log4net.ILog log = log4net.LogManager.GetLogger(typeof(Program));
log.Error(“Some error”);
log.ErrorFormat("Error with inputs {0} and {1}", stringvar, intvar);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
88159 次 |
| 最近记录: |