一、NLog 简介
NLog是适用于各种.NET平台的灵活,免费的日志记录平台。NLog使写入多个目标变得容易 。(数据库,文件,控制台)并即时更改日志记录配置。(本文主要介绍写日志到文件中)
Nlog 官网:https://nlog-project.org/
Nlog 配置说明:https://nlog-project.org/config/
Nlog Github Wiki:https://github.com/NLog/NLog/wiki
注:以下操作为 asp.net core web项目,编辑器为VS2019
二、NLog 安装
2.1 使用程序包管理控制台(Package Manager)
PM> Install-Package NLog
2.2 .Net CLI
dotnet add package NLog
在项目的根目录下,在cmd窗口中输入上面的命令即可安装。
目录一、NLog 简介二、NLog 安装三. NLog 配置四、程序代码中写日志五、参考一、NLog 简介NLog是适用于各种.NET平台的灵活,免费的日志记录平台。NLog使写入多个目标变得容易 。(数据库,文件,控制台)并即时更改日志记录配置。(本文主要介绍写日志到文件中)Nlog 官网:https://nlog-project.org/Nlog 配置说明:https://nlog-...
因为现场的定时调度框架是前辈写的,前辈已高就,现场使用因为涉及到一天几亿数据需要提取出来,转换为其他表数据,所以
日志
量特别大,1天10个G,长此以往肯定不行的,找了很多网上的教程都不行,最后发现,这样就可以删除3天的
日志
,目的达到,备忘分享
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="DEBUG">
<Appenders>
<Console name="console" tar
当
log
4j使用DailyRollingFileAppender进行
日志
归档时,需要对
日志
的个数进行控制。
此时需要对DailyRollingFileAppender进行重写。
package org.apache.
log
4j;
import org.slf4j.
Log
ger;
import org.slf4j.
Log
gerFactory;
import java.io.File;
import java.io.FileFilter;
import java.io.IOException;
最近做项目的时候,遇到了
日志
的
输出
问题。我们想按小时
输出
日志
,同时最多保存7天的
日志
。
log
4j本身自
带
的appender如下:
org.apache.
log
4j.ConsoleAppender
输出
到控制台
org.apache.
log
4j.FileAppender
输出
到文件
org.apache.
log
4j.DailyRollingFileAppender
org.apache.l...
日志
文件大小1MB,每天最多保留10个文件,只保留7天的
日志
rollingRandomAccessFile: #
日志
文件Appender,将
日志
信息
输出
到
日志
文件
- name: ROLLING_FILE
fileName: ${
log
Path}/${projectName}.
log
filePattern: "${
log
Path}/history
Log
s/$${date:yyyy-MM}/${projectName}-%d{yyyy-MM-dd}-%i.
log
.gz"
每天生成一个
log
4j
日志
文件,如果只需要将最近一段时间内的
日志
文件保留,以前或更早的文件不用保留。例如只保留最近一周的
日志
,
日志
文件保留3天等等这些。。。通过这个jar包就可以实现。
log
4j.properties文件在包中,拷贝出来用就可以了
if self.
log
is None:
self.
log
= open('monkey_
log
_%s.txt' % datetime.datetime.now().strftime('%Y%m%d%H%M%S'), 'w')
self.
log
.write("%s %s\n" % (datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S,%f'), msg))
这样Monkey产生的
日志
也会
带
有
时间戳
了。注意修改文件名和路径以适应自己的需求。