Log4net 配置输出文本, 按年月日分文件夹 z
2024-08-28 04:58:29
在项目中新建 “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="" />
<!--日志文件名是否是固定不变的-->
<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");
}
最新文章
- 使用 Code Snippet 简化 Coding
- iOS 企业设备管理 补充中。。。
- 手动获取spring的ApplicationContext和bean对象
- ajax的探究与使用
- 使用事件捕获实时捕获img是否加载完毕, 实现iframe内容高度自动适应
- Java8简明教程(转载)
- CISCO ASA 防火墙 IOS恢复与升级
- StringBuffer的用法
- 玩转redis
- install xdebug on fedora
- js http 请求 多个相同参数名传值
- ASP.NET (HttpModule,HttpHandler)
- nfs:server is not responding,still trying 原因与解决
- Spring Boot 探索系列 - 自动化配置篇
- 借助AMD来解决HTML5游戏开发中的痛点
- 巧用第三方快速开发Android App 热门第三方SDK及框架
- 又到毕业季,尚学堂喊你免费领取100个Java毕设项目(含源码视频),限时一周哦!
- 关于Class对象、类加载机制、虚拟机运行时内存布局的全面解析和推测
- 【Hadoop学习之三】Hadoop全分布式安装
- python-selenium,关于页面滑动的操作