zoukankan      html  css  js  c++  java
  • Log4net 配置输出文本, 按年月日分文件夹 z

    在项目中新建 “log4net.config” 文件

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <configSections>
            <section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net" />
        </configSections>
        <log4net>
            <appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender">
                <File value="Log" />
                <!--是否是向文件中追加日志-->
                <AppendToFile value="true" />
                <!--每个文件的大小-->
                <MaximumFileSize value="1MB"/>
                <!--log文件数-->
                <MaxSizeRollBackups value="10" />
                <!--日志文件名是否是固定不变的-->
                <StaticLogFileName value="false" />
                <!--日志文件名格式为:yyyy-MM-dd.log-->
                <DatePattern value="yyyy\MM\dd\yyyy-MM-dd'.log'" />
                <!--日志根据日期滚动-->
                <RollingStyle value="Date" />
                <layout type="log4net.Layout.PatternLayout">
                    <ConversionPattern value="%date %logger [%thread] %level %message%newline" />
                </layout>
            </appender>
     
            <root>
                <!--(高) OFF > FATAL > ERROR > WARN > INFO > DEBUG > ALL (低) -->
                <level value="all" />
                <appender-ref ref="RollingLogFileAppender" />
            </root>
        </log4net>
    </configuration>

    配置好后在程序集 AssemblyInfo.cs 中加入

    [assembly: log4net.Config.XmlConfigurator( ConfigFile = "log4net.config", Watch = true )]
     
    或者用代码初始化
    private void InitLog4net()
    {
        var logCfg = new FileInfo(AppDomain.CurrentDomain.BaseDirectory + "log4net.config");
        XmlConfigurator.ConfigureAndWatch(logCfg);
        //修改日志路径
        var repository = LogManager.GetRepository();
        var appenders = repository.GetAppenders();
        var targetApder = appenders.First() as RollingFileAppender;
        targetApder.File = string.IsNullOrWhiteSpace(Settings.Default.LogPath) ? Path.Combine( Environment.CurrentDirectory,"log.txt") : Settings.Default.LogPath;
        targetApder.ActivateOptions();
     
        this.log = LogManager.GetLogger("mainlog");
    }
     
  • 相关阅读:
    win10 彻底删除mysql步骤
    IDEA中添加类的创建者信息
    针对标签中设置 disabled="true",$("#id").serialize()获取不到value的解决方法
    使用Vue-cli创建project遇到的坑
    Jmeter压测总结
    Java通过ssh远程连接服务器
    Django 学习笔记(一)
    Python 测试框架基础
    Python 基础&Excel操作
    Appium环境搭建及计算器小实验
  • 原文地址:https://www.cnblogs.com/zeroone/p/7658483.html
Copyright © 2011-2022 走看看