應用log4net.dll

新建Global.asax,在cs文件中添加

protected void Application_Start(object sender, EventArgs e)
        {
            #region system log init
            log4net.Config.XmlConfigurator.Configure(new System.IO.FileInfo(AppDomain.CurrentDomain.BaseDirectory + @"\Log.config"));
            #endregion
        }

添加Log.config文件

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
</configSections> <log4net>
<root>
<level value="Error"/>
</root>
<logger name="FatalLog">
<level value="Fatal"/>
<appender-ref ref="RollingLogFileAppender"/>
</logger>
<logger name="ErrorLog">
<level value="Error"/>
<appender-ref ref="RollingLogFileAppender"/>
</logger>
<logger name="WarnLog">
<level value="Warn"/>
<appender-ref ref="RollingLogFileAppender"/>
</logger>
<logger name="DebugLog">
<level value="Debug"/>
<appender-ref ref="RollingLogFileAppender"/>
</logger>
<logger name="HTGInfoLog">
<level value="Info"/>
<appender-ref ref="RollingHTGFileAppender"/>
</logger>
<logger name="F4GInfoLog">
<level value="Info"/>
<appender-ref ref="RollingF4GFileAppender"/>
</logger>
<logger name="InfoLog">
<level value="Info"/>
<appender-ref ref="RollingLogFileAppender"/>
</logger>
<logger name="RuleEngineLog">
<level value="Info"/>
<appender-ref ref="RollingRuleEngineLogFileAppender"/>
</logger> <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
<!--輸出路徑-->
<file value="Log\"/>
<param name="AppendToFile" value="true"/>
<param name="MaxSizeRollBackups" value=""/>
<param name="StaticLogFileName" value="false"/>
<!--輸出按指定方式切換文件-->
<param name="DatePattern" value="yyyyMMdd&quot;.log&quot;"/>
<param name="RollingStyle" value="Composite"/><!--Date 按日期,Size 按大小-->
<param name="maximumFileSize" value="10240KB" />
<!--輸出LOG格式-->
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.PatternLayout">
<param name="Header" value=""/>
<param name="ConversionPattern" value="%n------------LogName:%c --------------------------------------------%nTimestamp: %d %nClient: %X%nThread:%thread%nLevel: %p%n%m %n-------------------------------------------------------------------------%n"/>
<param name="Footer" value=""/>
</layout>
<!--輸出不同級別的LOG-->
<!--<filter type="log4net.Filter.LevelRangeFilter">
<param name="LevelMin" value="DEBUG"/> <param name="LevelMax" value="FATAL"/> </filter>-->
</appender> <appender name="RollingRuleEngineLogFileAppender" type="log4net.Appender.RollingFileAppender">
<!--Output path-->
<file value="RuleEngineLog\"/>
<param name="AppendToFile" value="true"/>
<param name="MaxSizeRollBackups" value=""/>
<param name="StaticLogFileName" value="false"/>
<!--Output file as specified switch-->
<param name="DatePattern" value="&quot;RuleEngineLog&quot;yyyyMMdd&quot;.log&quot;"/>
<param name="RollingStyle" value="Composite"/>
<param name="maximumFileSize" value="10240KB" />
<!--LOG output format-->
<lockingModel type="log4net.Appender.FileAppender+MinimalLock" />
<layout type="log4net.Layout.PatternLayout">
<param name="Header" value=""/>
<param name="ConversionPattern" value="%n------------LogName:%c--------------------------------------------%n%m %n-----------------------------------------------------------------------------%n"/>
<param name="Footer" value=""/>
</layout>
</appender>
</log4net>
</configuration>

利用log4添加log的更多相关文章

  1. [转载]在Android C/C++层添加LOG调试

    原文地址:C/C++层添加LOG调试">在Android C/C++层添加LOG调试作者:谢轩昂 在Android C/C++层添加LOG调试,并且在Logcat中输出的方法 第一步: ...

  2. Android开发过程中在sh,py,mk文件中添加log信息的方法

    Android开发过程中在sh,py,mk文件中添加log信息的方法 在sh文件中: echo "this is a log info" + $info 在py文件中: print ...

  3. 解决Ubuntu下添加Log却无法输出(高通平台)

    1.首先考虑到的是你所添加Log的位置确实没有被调用或者在调用前发生异常终止掉了. 2.你修改后没有进行编译或者没有push/install 3.如果你当前的系统版本是User版本,你在push的时候 ...

  4. C# 后台添加Log信息

    我们在做项目的时候,经常会使用到Log日志,今天分享一下如何在后台添加Log信息 创建一个写Log的方法: public void WriteLog(string Action) { try { st ...

  5. 在idea中如何添加log日志

    1.首先下载log4的jar包,官方路径为:http://www.apache.org/dyn/closer.cgi/logging/log4j/1.2.17/log4j-1.2.17.zip 2.下 ...

  6. iOS 利用JSPatch 添加热补丁功能

    ios 由于苹果的审核政策,一旦上线后发现bug是件让人崩溃的事情 不过可以利用oc的runtime机制可以家用JSPatch动态的为工程打热补丁 下载地址:https://github.com/ag ...

  7. Android利用ContentProviderOperation添加联系人

    Android添加联系人有两种方式: 1. 直接调用插入语句,先插入一个空Item,得到一个id,然后给这个id对应的插入其他信息,如姓名,号码,邮件等: 2. 利用ContentProviderOp ...

  8. 利用python 提取log 文件里的关键句子,并进行统计分析

    利用python开发了一个提取sim.log 中的各个关键步骤中的时间并进行统计的程序: #!/usr/bin/python2.6 import re,datetime file_name='/hom ...

  9. wordpress如何利用插件添加优酷土豆等视频到自己的博客上

    wordpress有时候需要添加优酷.土豆等网站的视频到自己的博客上,传统的分享方法不能符合电脑端和手机端屏幕大小的需求,又比较繁琐,怎样利用插件的方法进行添加呢,本视频向你介绍一款这样的插件——Sm ...

随机推荐

  1. vue 安装之路

    vue 来源 1.安装node.js(http://www.runoob.com/nodejs/nodejs-install-setup.html) 2.基于node.js,利用淘宝npm镜像安装相关 ...

  2. Unix的哲学

    先讲两个很老的小故事. 第一个故事. 有一家日本最大的化妆品公司,收到了用户的投诉.用户抱怨买来的肥皂盒是空的.这家公司为了防止再发生这样的事故,很辛苦地发明了一台X光检查器,能够透视每一个出货的肥皂 ...

  3. Golang并发模型之Context详解

    对于 Golang 开发者来说context(上下文)包一定不会陌生.但很多时候,我们懒惰的只是见过它,或能起到什么作用,并不会去深究它. 应用场景:在 Go http 包的 Server 中,每一个 ...

  4. Confluence 6 Cron 表达式

    一个 cron 表达式是以 6-7 时间字段来定义一个计划任务是如何按照时间被执行的.每一个字段中的数据库而已为数字或者是一些特定的字符串来进行表达.每一个字段是使用空格或者 tab 进行分隔的. 下 ...

  5. Confluence 6 重构查找索引

    查找索引是自动维护的,但是你有时候可能会因为你在查找的时候或查看者邮件主题出现了异常,或者你的 Confluence 实例升级到了新的版本,你可能需要手动重构索引. 进行搜索索引重构: 在屏幕的右上角 ...

  6. 探索一个NSObject对象占用多少内存?

    1 下面写代码测试探索NSObject的本质 Objective-C代码,底层实现其实都是C\C++代码 #import <Foundation/Foundation.h> int mai ...

  7. ionic在ios侧滑页面空白 禁用视图滑动后退

    本人在ios10左右滑动的时候,经常出现左滑页面后退,然后整个页面空白现象,只能强行退出,并重新登录,最简单的方法就是禁用侧滑后退这个功能: 在app.js上config增加如下: $ionicCon ...

  8. FromData获取表单数据

    一般想要不刷新页面提交数据时,可以使用ajax提交.如果数据量不大可以自己写json数据用ajax提交到后台服务,但是数据量多且需要动态添加数据时,自己写json格式数据就有点麻烦了,这时候就需要Fo ...

  9. ActiveMQ消息的持久化策略

    持久化消息和非持久化消息的存储原理: 正常情况下,非持久化消息是存储在内存中的,持久化消息是存储在文件中的.能够存储的最大消息数据在${ActiveMQ_HOME}/conf/activemq.xml ...

  10. PDF怎么编辑,如何旋转PDF页面方向

    很多的时候,无论是工作中,还是在学习中都会遇到PDF文件,对于PDF文件,熟悉的小伙伴知道,在编辑PDF文件的时候,是需要使用到PDF编辑软件的,那么,在编辑PDF文件的时候,需要旋转文件的页面,这时 ...