首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在滚动Log4Net日志文件中的自定义文件名?

在滚动Log4Net日志文件中的自定义文件名?
EN

Stack Overflow用户
提问于 2009-06-23 07:29:20
回答 6查看 22.2K关注 0票数 19

我们有一个app .Net应用程序,我们使用Log4Net在应用程序中记录详细信息-没有什么新的-滚动日志文件名采用通常的格式:

代码语言:javascript
复制
rolling-log.txt 
rolling-log.txt.1
rolling-log.txt.2 etc.

应用程序的每个用户都会添加到日志文件中,因此,对于特定用户的情况,日志文件可能很难读取,因此,我们希望以某种方式修改配置文件,以单独记录用户的日志详细信息,每个用户写入一个特定的文件,例如

代码语言:javascript
复制
<applicationId>rolling-log.txt
<applicationId>rolling-log.txt.1
<applicationId>rolling-log.txt.2
etc.

其中是每个用户的唯一应用程序Id,由五位数字组成,例如

代码语言:javascript
复制
12345rolling-log.txt

假设这是可能的,有没有关于实现这一点的最佳方法的想法?

干杯

布雷特

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2010-03-10 21:17:17

查找log4net上下文属性...

在你的代码中:

代码语言:javascript
复制
log4net.GlobalContext.Properties["id"] = "12345";

然后

代码语言:javascript
复制
log4net.Config.XmlConfigurator.ConfigureAndWatch(new FileInfo("configPath"));

在log4net配置文件中:

代码语言:javascript
复制
<file type="log4net.Util.PatternString"
            value="%property{id}rolling-log.txt" />
票数 17
EN

Stack Overflow用户

发布于 2010-03-23 04:06:40

代码语言:javascript
复制
<file type="log4net.Util.PatternString">
  <conversionPattern value="C:\Logs\log-%date{ yyyy.MM.dd.HH.mm.ss}-[%processid].log" />
</file>

from here

票数 37
EN

Stack Overflow用户

发布于 2009-06-23 08:09:28

我相信Log4Net配置文件支持环境变量(例如用户名)以及可定制的模式,这应该会满足您的需求。

查看the Log4Net V1.2.10 release notes中的“用于基于模式的配置的PatternString”。

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1031096

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档