zoukankan      html  css  js  c++  java
  • Log4net日志文件自动按月份存放和日志独占问题的解决

    让log4net日志文件自动按月份存放

    log4net日志文件的作用还真不小,可以保存管理员、用户对数据库的任何操作,保存管理员和用户的登录记录,分析系统运行错误,所以不舍得随便将日志文件Delete。如果时间长了,日志文件夹一定会有很多很多日志文件,不便于管理员查看。

    所以让log4net日志文件自动按月份存放是必须的,其实方法很Easy,额是突发奇想在DatePattern value中增加“yyyyMM\”,运行后果然如额所愿。

    也就是修改Web.Config文件如下:

    <file value="Log\"/><!--日志文件夹及文件名开头-->
    <DatePattern value="yyyyMM\yyyy-MM-dd&quot;.log&quot;"/><!--文件名后面加上.log后缀,必须使用转义字符-->

    <appender name="LogsServiceFileAppender" type="log4net.Appender.RollingFileAppender,log4net">
    <param name="File" value="Logs"/>
    <param name="AppendToFile" value="true"/>
    <param name="MaxSizeRollBackups" value="1"/>
    <param name="StaticLogFileName" value="false"/>
    <param name="DatePattern" value="yyyyMMdd".log""/>
    <param name="RollingStyle" value="Date"/>
    <layout type="log4net.Layout.PatternLayout">
    <param name="ConversionPattern" value="%n记录时间:%d [%t] %n日志级别:%-5p %n日志内容:%c - %m%n"/>
    </layout>
    </appender>
    

    解决log4net独占日志文件的问题

    由于log4net默认情况下会独占日志文件该文件不能被File.Open,否则会出现异常错误,甚为郁闷。网上找到的解决方法:

    修改Web.Config文件,在

    <appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender"></appender>

    节中加入:

    <lockingModel type="log4net.Appender.FileAppender+MinimalLock" />

    就可以了,即使用最小锁定模型(minimal locking model),以允许多个进程可以写入同一个文件

    本文引用 http://guojun2sq.blog.163.com/blog/static/6433086120111925936159/

  • 相关阅读:
    HDU 3401 Trade
    POJ 1151 Atlantis
    HDU 3415 Max Sum of MaxKsubsequence
    HDU 4234 Moving Points
    HDU 4258 Covered Walkway
    HDU 4391 Paint The Wall
    HDU 1199 Color the Ball
    HDU 4374 One hundred layer
    HDU 3507 Print Article
    GCC特性之__init修饰解析 kasalyn的专栏 博客频道 CSDN.NET
  • 原文地址:https://www.cnblogs.com/lxny/p/6741779.html
Copyright © 2011-2022 走看看