log4net保存到数据库系列一:WebConfig中配置log…
2018-06-22 07:31:15来源:未知 阅读 ()
园子里面有很多关于log4net保存到数据库的帖子,但是要动手操作还是比较不易,从头开始学习log4net数据库日志
- 一、WebConfig中配置log4net
- 二、独立配置文件中配置log4net
- 三、代码中xml配置log4net
- 四、完整代码配置log4net
- 五、新增数据库字段
下面先一点一点来学习如果进行配置
1.下载安装
- Nuget安装:
- Nuget控制台安装:
Install-Package log4net
- 官方下载最新版本:
http://logging.apache.org/log4net/download_log4net.cgi
2.创建数据库脚本
1 CREATE TABLE [dbo].[Log] ( 2 [Id] [int] IDENTITY (1, 1) NOT NULL, 3 [Date] [datetime] NOT NULL, 4 [Thread] [varchar] (255) NOT NULL, 5 [Level] [varchar] (50) NOT NULL, 6 [Logger] [varchar] (255) NOT NULL, 7 [Message] [varchar] (4000) NOT NULL, 8 [Exception] [varchar] (2000) NULL 9 )
3.配置文件
WebConfig的configSections节点增加
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />
<log4net> <!--注册Appender--> <root> <level value="ALL" /> <appender-ref ref="AdoNetAppender" /> </root> <!--配置Appender--> <appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender"> <bufferSize value="-1" /> <connectionType value="System.Data.SqlClient.SqlConnection, System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" /> <connectionString value="data source=[服务器地址];initial catalog=[数据库];persist security info=True;user id=[账号];password=[密码];MultipleActiveResultSets=True;" /> <commandText value="INSERT INTO Log ([Date],[Thread],[Level],[Logger],[Message],[Exception]) VALUES (@log_date, @thread, @log_level, @logger, @message, @exception)" /> <parameter> <parameterName value="@log_date" /> <dbType value="DateTime" /> <layout type="log4net.Layout.RawTimeStampLayout" /> </parameter> <parameter> <parameterName value="@thread" /> <dbType value="String" /> <size value="255" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%thread" /> </layout> </parameter> <parameter> <parameterName value="@log_level" /> <dbType value="String" /> <size value="50" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%level" /> </layout> </parameter> <parameter> <parameterName value="@logger" /> <dbType value="String" /> <size value="255" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%logger" /> </layout> </parameter> <parameter> <parameterName value="@message" /> <dbType value="String" /> <size value="4000" /> <layout type="log4net.Layout.PatternLayout"> <conversionPattern value="%message" /> </layout> </parameter> <parameter> <parameterName value="@exception" /> <dbType value="String" /> <size value="2000" /> <layout type="log4net.Layout.ExceptionLayout" /> </parameter> </appender> </log4net>
4.设置监控
AssemblyInfo.cs中增加代码
[assembly: log4net.Config.XmlConfigurator(Watch = true)]
5.测试代码
ILog log = log4net.LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); log.Error("Error是错误", new Exception("错误")); log.Fatal("Fatal是严重错误", new Exception("致命错误")); log.Info("Info是普通消息"); log.Debug("Debug是调试消息");
6.测试成功
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:【基础】Html跨域跳转问题整理
- .net下log4net使用方法详解 2020-03-19
- 详解asp.net mvc CodeFirst模式数据库迁移步骤 2019-12-14
- asp.net实现access数据库分页的方法 2019-12-13
- ASP.NET连接 Access数据库的几种方法 2019-11-29
- 详解Discuz!NT数据库读写分离方案 2019-09-17
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash