log4net 配置速成(保存到数据库)
来源:互联网 发布:seo数据分析 编辑:程序博客网 时间:2024/06/05 09:18
1. Properties/AssemblyInfo.cs 里加上2句代码:
a. using log4net.Config;
b. [assembly: XmlConfigurator(ConfigFile = "Log4Net.config", Watch = true)]
2. 把 Log4Net.config 文件 放在与web.config 一个目录。就是根目录咯。
3. 建数据库及LOG表。字段见 Log4Net.config 里的 AdoNetAppender 。
4. 修改 Log4Net.config 里的连接字符串connectionString 及 commandText 看是否插入的表名与建的表是否一致。
5. 使用咯:
ILog logger = LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
logger.Debug("用Log4Net写入数据库日志");
logger.Error("这是一个错误日志");
logger.Fatal("这是一个致命的错误日志");
logger.Warn("这是一个警告日志");
6. 测试时 Log4Net.config里的 bufferSize 为1,在运行时记得修改一下。
附 Log4Net.config 文件:
<?xml version="1.0" encoding="utf-8"?>
<log4net>
<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=127.0.0.1;Initial Catalog=Data;Persist Security Info=True;User ID=sa;Password=password" />
<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>
<root>
<!-- Set this to "ERROR" before release -->
<!--Highest: OFF->FATAL->RROR->WARN->INFO->DEBUG->ALL :Lowest -->
<level value="ALL" />
<appender-ref ref="AdoNetAppender" />
<!-- <appender-ref ref="SmtpAppender" /> -->
<!--<appender-ref ref="FileAppender" /> -->
</root>
</log4net>
<log4net>
<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=127.0.0.1;Initial Catalog=Data;Persist Security Info=True;User ID=sa;Password=password" />
<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>
<root>
<!-- Set this to "ERROR" before release -->
<!--Highest: OFF->FATAL->RROR->WARN->INFO->DEBUG->ALL :Lowest -->
<level value="ALL" />
<appender-ref ref="AdoNetAppender" />
<!-- <appender-ref ref="SmtpAppender" /> -->
<!--<appender-ref ref="FileAppender" /> -->
</root>
</log4net>
- log4net 配置速成(保存到数据库)
- log4net配置写数据到数据库中
- Log4Net把日志保存到数据库和发送Email
- 让log4net保存自定义对象信息到数据库中
- Log4Net保存错误日志到SQLServer的步骤与配置
- 配置Log4net把日志写到SQLServer数据库
- Log4Net保存错误日志到文本文件与错误页的配置
- Log4net保存到数据或者保存到本地的使用
- 使用log4net记录日志到数据库(含有自定义属性)
- 使用log4net记录日志到数据库(含有自定义属性)
- log4net写入到SQL server的基本配置(downmoon)
- Log4net 配置 (转)
- Log4Net记录日志到SQLServer数据库
- Log4Net(三)之记录日志到数据库
- log4net 写日志到 Sql server 数据库
- log4net配置成可log到mssql
- log4net 发送错误日志到邮箱配置
- Enterprise Library 2.0 技巧(2):如何将配置信息保存到数据库中
- x86,I386,i686, x86_64, x64,amd64、Windows Linux AIX下查看CPU位数和操作系统位数、rpm包名
- Magento: Adding category attributes
- R.drawable.id中出现图片id,但是应用中找不到图片资源
- 设计模式六大原则(1):单一职责原则
- 8-20学习练习[用两个tableview实现类似省市联动选择效果]
- log4net 配置速成(保存到数据库)
- 详解slab机制(4) slab初始化
- JSTL 核心标签库 使用
- 怎么修改boot.ini文件
- 用Eclipse打包jar程序直接运行(3.Eclipse打包总结)_hanCSDN_20130821
- 决策树
- 不生成core文件原因
- 状态模式
- CreateToolhelp32Snapshot枚举进程