本文共 3722 字,大约阅读时间需要 12 分钟。
C#中异常的记录也有一个模板,就是log4net。多的就不说了直接看怎么用的吧。
1、引用log4net.dll。 2、实现log4net的方法。public class LogImplement { private ILog logger; public LogImplement(ILog log) { this.logger = log; } public void Debug(object message) { this.logger.Debug(message); } public void Debug(object message, Exception e) { this.logger.Debug(message, e); } public void Warming(object message) { this.logger.Warn(message); } public void Warming(object message,Exception e) { this.logger.Warn(message, e); } public void Error(object message) { this.logger.Error(message); } public void Error(object message, Exception e) { this.logger.Error(message, e); } public void Info(object message) { this.logger.Info(message); } public void Info(object message, Exception e) { this.logger.Info(message, e); } } public class LogFactory { static LogFactory() { FileInfo configFile = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + @"Log.config"); log4net.Config.XmlConfigurator.Configure(configFile); } public static LogImplement GetLogger(Type type) { return new LogImplement(LogManager.GetLogger(type)); } public static LogImplement GetLogger(string str) { return new LogImplement(LogManager.GetLogger(str)); } }
3、配置文件
其中, <maximumFileSize value="1MB"/>表示异常文件超过1M大小就自动新增文件;<file value="log\Warn.log"/>表示异常文件的路径;<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/>表示要支持的.net版本。至于其他属性在使用中自己可以慢慢体会。
4、记录异常public class RecordLog { public static void RecordException(Exception e) { LogImplement log = LogFactory.GetLogger(typeof(RecordLog)); log.Error(e.Message + e.StackTrace); } }
5、调用
static void Main(string[] args) { try { string test = "123tr"; int i = int.Parse(test);//制造一个异常 } catch(Exception e) { RecordLog.RecordException(e); } }
运行后,异常文件的位置如图:
记录异常:
详细工程下载:
转载地址:http://rhmna.baihongyu.com/