log4net的应用

1.下载log4net

2编写log4net的配置文件

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <configSections>
    <section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
  </configSections>
  <appSettings>   </appSettings>
  <log4net debug="true">
    <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
      <param name="File" value="log//error_"/>
      <param name="AppendToFile" value="true"/>
      <param name="MaxSizeRollBackups" value="10"/>
      <param name="StaticLogFileName" value="false"/>
      <param name="DatePattern" value="yyyy-MM-dd".log""/>
      <param name="RollingStyle" value="Date"/>
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d - %m%n"/>
      </layout>
    </appender>
    <root>
      <level value="DEBUG"/>
      <appender-ref ref="RollingLogFileAppender"/>
    </root>
  </log4net>
</configuration>

  3编写帮助类

using log4net;
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Reflection;
using System.Text;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using System.Web;

namespace TestData.Common
{
    public static class HadleExcption
    {
        //判断是否是绝对路径
        public static bool IsPhysicalPath(string Path)
        {
            string RegexString = @"\b[a-z]:\\.*";
            MatchCollection Matchs = Regex.Matches(Path, RegexString, RegexOptions.IgnoreCase | RegexOptions.Compiled);
            if (Matchs.Count > 0)
                return true;
            return false;
        }

        public static void WriteLog(this Exception ex, string message)
        {
            string _path = "";
            if (!IsPhysicalPath("~/Config/lognet.config"))
                _path = HttpContext.Current.Server.MapPath("~/Config");
            else _path = "~/Config/lognet.config";
            FileInfo info = null;
            if (new DirectoryInfo(_path).Exists)
            {
                info = new FileInfo(_path + "/lognet.config");
            }
            log4net.Config.XmlConfigurator.ConfigureAndWatch(info);
            log4net.ILog log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
            log.Info(message, ex);

        }
    }
}

  

时间: 2024-10-11 11:28:27

log4net的应用的相关文章

log4net 使用总结- (2)在ASP.NET MVC 中使用

log4net在ASP.NET MVC中的配置,还有一种配置方式,即不在web.config中,而是单独新建一个log4net.config 在根目录下 第一.引用log4net.dll 第二.在站点根目录下增加log4net.config <?xml version="1.0" encoding="utf-8" ?> <configuration> <configSections> <section name="

(转)非常完善的Log4net详细说明

转自:http://www.cnblogs.com/zhangchenliang/p/4546352.htmlhttp://www.cnblogs.com/zhangchenliang/p/4546352.html (转)非常完善的Log4net详细说明 1.概述 log4net是.Net下一个非常优秀的开源日志记录组件.log4net记录日志的功能非常强大.它可以将日志分不同的等级,以不同的格式,输出到不同的媒介.本文主要是介绍如何在Visual Studio2008中使用log4net快速创

Log4Net 之初体验

今天试了一下关于日志的一个插件--Log4Net 关于这个插件就不过多描述了,有很多人用,也挺好用比较方便,所以在此记录下使用过程. 一.建一个mvc 空网站 名字叫 Log4NetTest 二.下载log4net.dll 并添加引用,也可以用NuGet在线安装 三.在Models  文件夹下建立MyErrorAttribute 大概就是把所有的错误丢进队列里面去,并且继承 HandleErrorAttribute 代码就如下: using System; using System.Collec

log4net 既要按日期分割日志文件,又要按文件大小分割。

<appender name="DebugAppender" type="log4net.Appender.RollingFileAppender"> <file value="log\debug\"/> <appendToFile value="true" /> <rollingStyle value="Composite" /> <datePatte

Log4Net 帮助类

//[assembly: log4net.Config.XmlConfigurator(ConfigFile = "Web.config", Watch = true)] namespace LogNet { /// <summary> /// Author :TonyKit /// Date :2016-09-25 /// Description:日志辅助类 /// </summary> public class Logger { #region [ 单例模式

log4net使用简介

说明:本程序演示如何利用log4net记录程序日志信息.log4net是一个功能著名的开源日志记录组件.利用log4net可以方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包括MS SQL Server, Access, Oracle9i,Oracle8i,DB2,SQLite)中.并且我们还可以记载控制要记载的日志级别,可以记载的日志类别包括:FATAL(致命错误).ERROR(一般错误).WARN(警告).INFO(一般信息).DEBUG(调试信息).要想获取最新版本的

Log4Net使用详解

说明自从上次在2008年在博客上发表过有关log4net的用法介绍文章之后(网址:http://blog.csdn.net/zhoufoxcn/archive/2008/03/26/2220533.aspx),有不少朋友在博文下留言询问一些细节,现在就一些比较普遍的问题做一些稍微深入的解答,希望大家满意.首先说明一点的是,log4net解决的问题是提供一个记录日志的框架,它提供了向多种目标写入的实现,比如利用log4net可以方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包

Log4Net 在多层项目中的使用小记

原文地址:http://www.cnblogs.com/zdh8675/p/3645556.html 这几天刚好在调整一个项目,把一些自己不是很清楚的东西先试验一下,这篇文章主要是对我在项目中需要使用Log4Net的一些记录.网上有很多相关的教程,但是各有各的说法,我结合我自己这个项目的需要,首先,项目是分多层的,假如每一层都需要加入日志记录,那该怎么办呢,下面是我的一些操作步骤,记录出来和大家分享一下,不足之处希望大家多拍板砖多多指教. 这个截图是我的当前项目的层次结构,首先在Common层先

将Log4Net 日志保存到mongodb数据库实践

log4net的大名早有耳闻,一直没真正用过,这次开发APP项目准备在服务端使用log4net. 日志的数据量较大,频繁的写数据库容易影响系统整体性能,所以独立将日志写到mongodb数据库是不错的选择.---经过2天的摸索,总结出本文档. github有个开源项目log4mongo-net,另一位斯克迪亚作者根据开源项目又做了修改http://skyd.sinaapp.com/archives/1282. 所以直接拿斯克迪亚的代码来使用. 1.将log4net和mongodb驱动升级为最新版本

log4net RemotingAppender 的配置

Before you even start trying any of the alternatives provided, ask yourself whether you really need to have multiple processes log to the same file, then don't do it ;-). FileAppender offers pluggable locking models for this usecase but all existing