Asp.net 使用log4net日志功能

Asp.net使用log4net日志功能

1. 在bin文件夹下面引入 log4net.dll。你只需要引入log4net.dll 既可,其他dll是我抠图的时候扣多了

2 . Global.asax 中加入

void Application_Start(object sender,EventArgs e)

{

// 在应用程序启动时运行的代码

log4net.Config.DOMConfigurator.Configure();

}

3.修改配置文件(web.config)

log日志既可以写到数据库,也可以写入文本文件中

(1) .

configSections 中加入如下配置节,及引入log4net的处理程序集

<configSections>

<sectionname="log4net"type="log4net.Config.Log4NetConfigurationSectionHandler,log4net" />

</configSections>

(2). 在configuration下面加入下面的代码(整个复制即可)

<log4net>

<root>

<level value="ALL"/>

<appender-ref ref="ADONetAppender"/>

</root>

<!--

相关操作代码

-->

<appendername="ADONetAppender" type="log4net.Appender.ADONetAppender">

<bufferSize value="0"/>

<connectionType value="System.Data.SqlClient.SqlConnection,System.Data, Version=1.0.3300.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>

<connectionString value="server=.;database=test;userid=newst;password=xxx" />

<commandText value="INSERTINTO 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>

以上的这个配置是用于保存到数据库的,

最后你要再数据库中建立一张如下的表

CREATE TABLE [Log]

(

[Id] [int] IDENTITY(1, 1) NOT NULL,

[Date] [datetime] NOTNULL,

[Thread] [varchar] (255) NOTNULL,

[Level] [varchar] (50) NOT NULL,

[Logger] [varchar] (255) NOTNULL,

[Message] [varchar] (4000) NOT NULL,

[Exception] [varchar] (2000) NULL

)

上面的配置节是针对数据库保存方式

如果你想要保存到你项目的文件中,请使用下面的配置节

<log4net>

<root>

<levelvalue="ALL" />

<appender-refref="LogFileAppender" />

</root>

<!--

相关操作代码

-->

<appendername="LogFileAppender"  type="log4net.Appender.FileAppender" >

<paramname="File"value="Log\log-file.txt" />        //日志文件保存的地方

<paramname="AppendToFile"value="true" />

<layouttype="log4net.Layout.PatternLayout">

<paramname="ConversionPattern"  value="记录时间:%d     线程 ID:[%t]    日志级别:%-5p     出错类:%logger property:[%property{NDC}]     错误描述:%m%n" />

</layout>

</appender>

</log4net>

上面的配置节将把你的日志信息写入 log-file.txt文件中 ,如果项目没有这个文件,没关心log4net 会自动创建。

4 最后一步就是如何使用log4net

新建一个类文件,引入如下代码

public class MyLog

{

privatestatic readonlylog4net.ILog log = log4net.LogManager.GetLogger(typeof(MyLog));

//日志文件类

publicMyLog()

{

//

//TODO: 在此处添加构造函数逻辑

//

}

publicstatic voidlogInfor(string infor)

{

log.Info(infor);

}

publicstatic voidErrorInfor(string errInfor)

{

log.Info(errInfor);

}

}

然后在你需要使用的地方 调用即可

很简单吧。

时间: 2024-08-01 23:20:20

Asp.net 使用log4net日志功能的相关文章

ASP.NET使用log4Net日志组件教程(按日期与按日志大小切割)

对于一个大型网站与系统来说,日志是必备的工具,通过日志你可以非常清楚程序的运行情况,及时得到反馈来解决问题,下面介绍ASP.NET版本的log4Net日志组件是个非常强大的工具,最新版本for .net2.0 1.2.10.0 本人搞了一天,终于知道搞清楚怎样使用了,简单记录一下. 以下介绍的方法是log4net使用单独的配置文件的. 开始行动: 第一步:在项目引用log4net.dll文件 第二步: 在Web.config文件中加入一句代码,位置如下: <configuration>   

如何在通用权限管理系统中集成log4net日志功能

开发人员都知道,在系统运行中要记录各种日志,自己写一个日志功能,无论是在效率还是功能扩展上来说都不是很好,目前大多用的是第三方的日志系统,其中一个非常有名,用的最多的就是log4net.下面是关于这个组件的介绍 ”Log4net是基于.net开发的一款非常著名的记录日志开源组件.最早是2001年7月由NeoWorks Limited启动的项目,基本的框架源, 于另外的一个非常著名的姐妹组件-log4j.现由Apache组织开发与维护.此日志架构是可灵活扩展,且通过配置文件来设置日志的属性及输出,

.NET跨平台之旅:增加文件日志功能遇到的挫折

在将我们的ASP.NET 5示例站点(about.cnblogs.com)升级至ASP.NET 5 RC1的时候,我们增加了控制台日志功能. 在ASP.NET 5添加日志功能很简单,只需在project.json中添加Microsoft.Extensions.Logging.Console的引用: "dependencies":{ "Microsoft.Extensions.Logging.Console": "1.0.0-*" } 并且在 St

Asp.Net Core中利用Seq组件展示结构化日志功能

在一次.Net Core小项目的开发中,掌握的不够深入,对日志记录并没有好好利用,以至于一出现异常问题,都得跑动服务器上查看,那时一度怀疑自己肯定没学好,不然这一块日志不可能需要自己扒服务器日志来查看,果然,很多东西没掌握,至此,花点时间看了下日志的相关操作.利用日志服务来查看日志数据. 本文地址:https://www.cnblogs.com/CKExp/p/9246788.html 本文Demo的地址:https://gitee.com/530521314/LogPanel.git 一.日志

asp.net利用log4net写入日志到SqlServer数据库

asp.net利用log4net写入日志到SqlServer数据库 作者: Kein  来源: 博客园  发布时间: 2010-10-14 07:19  阅读: 6427 次  推荐: 6   原文链接   [收藏] 摘要:Log4net是一个开源的错误日志记录项目,asp.net利用log4net写入日志到SqlServer数据库.下面就我的安装部署log4net到MS sql server的经验与大家分享. asp.net利用log4net写入日志到SqlServer数据库,Log4net是

asp.net core 集成 log4net 日志框架

原文:asp.net core 集成 log4net 日志框架 asp.net core 集成 log4net 日志框架 Intro 在 asp.net core 中有些日志我们可能想输出到数据库或文件或elasticsearch等,如果不自己去实现一个 LoggerProvider 的话就需要借助第三方日志框架实现了,而一些第三方框架的实现大多比较完善和成熟,不失为一个好办法. 自己写了一个 log4net 的扩展 WeihanLi.Common.Logging.Log4Net,提供了在 .n

[.Net MVC] 使用 log4net 日志框架

项目:后台管理平台 意义:项目开发中提出增加日志功能,对关键的操作.程序运行中的错误信息进行记录,这对程序部署后的调试有很大意义. 注:本文非原创,只是对网上搜集的信息进行了整合,以备今后查询. 一.最快速的上手步骤 1.用 NuGet来添加log4net 2.在项目根目录下的Web.config中添加节点.在 <configSections> 节点下添加对log4net的引用, <configSections> <section name="log4net&quo

log4net日志系统使用详解

1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记录日志的功能非常强大.它可以将日志分不同的等级,以不同的格式,输出到不同的媒介.本文主要是介绍如何在Visual Studio2008中使用log4net快速创建系统日志,如何扩展以输出自定义字段. 2.一个简单的使用实例 第一步:在项目中添加对log4net.dll的引用,这里引用版本是1.2.10.0. 第二步:程序启动时读取log4net的配置文件. 如果是CS程序,在根目录的Program.cs中的Mai

(译)Windsor入门教程---第五部分 添加日志功能

介绍 现在我们已经有了基础的框架了,是时候添加内容了,那么我们首先应该考虑的就是在应用程序中添加日志功能.我们会使用Windsor来配置,在这一部分,你将学习Windsor之外的其他功能. Logging Facility 在上一部分说过,Windsor有很多自带的可选的功能组件,他们扩展了Windsor的即用性.在这一部分,我们将在程序中添加日志功能. Logging Facility提供了一些常用的日志框架比如Log4net.Nlog,以及mvc内置的日志框架Trace.Logging Fa