问题标签 [log4net-appender]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
194 浏览

wcf - WCF 服务的 Log4net PatternLayout 问题

我正在将 Log4Net 用于 WCF 服务。我希望将自定义参数“REQUESTID”传递给 log4net。

log4net 模式布局如下图:

我在下面试过:

但它没有按预期工作。任何想法,将不胜感激。

0 投票
1 回答
834 浏览

c#-4.0 - log4net 滚动日志文件后生成错误的日志文件名

基本上我有这个log4net的配置:

现在我有一个问题。每次 log4net 滚动日志文件时,它都不会更改日志文件的日期部分。例如,如果今天的日志文件是 - log.MyServiceName-PID-1234_20131208.log,明天滚动文件后,文件名不会改变,所以我最终会得到一个回滚日志文件和活动日志文件这样

  1. log.QAService-PID-17584_20131208.log
  2. log.QAService-PID-17584_20131208.log2013Dec08

我想要的是

  1. log.QAService-PID-17584_20131209.log - 活动日志文件
  2. log.QAService-PID-17584_20131208.log2013Dec08 - 回滚

现在我遇到了这篇文章,但它对我没有帮助。特别是,如果我从文件中删除日期模式,并将preserveLogFileNameExtension设置为true,我将无法再在活动日志文件中看到日期部分。如果我进一步将staticLogFileName设置为false,我不再有活动日志文件,而是活动日志文件具有回滚日志文件名模式。

我在这里想念什么?回滚后如何生成正确的日志文件名。

我正在使用 log4net 版本 1.2.10.0。不幸的是,我无法将其升级到较新的版本。

更新 这是 RollingFileAppenderWithDeletion 的自定义实现。它只是在日志文件滚动发生后清理旧的回滚文件。

0 投票
1 回答
7307 浏览

c# - log4net 自定义附加程序不起作用

我已经为我的项目使用 log4net 创建了一个自定义附加程序。我使用 AppenderSkeleton 接口创建了 SampleLogAppender 类。

}

如果我在配置文件中配置这个类,它就不起作用。下面是我正在使用的配置。

我正在使用上面的配置文件,但它不起作用。下面我使用的是 log4net 配置。

我也有记录器类。

我在启动项目中初始化 Logger,如下所示。

我使用如下记录器。

当我调用它时,Append() 方法不会调用。

请给出一些解决方案。

0 投票
1 回答
151 浏览

c#-4.0 - windows事件中未生成事件

我正在使用 log4net 进行日志记录,我有两个附加程序一个文件和另一个事件日志附加程序。我在这里引用了这个链接

我的问题是日志是在文件中生成的,而不是在 Windows 事件中生成的。

我的代码是:

代码方面是:

我将 application_Error 用于全局级别错误

请帮助我错了为什么错误和信息没有记录在windows事件中

0 投票
1 回答
407 浏览

c#-4.0 - Log4Net 以编程方式检索 Appender

我有一个单独的Log4Net.config文件,其中包含 2 个附加程序和 2 个记录器,每个附加程序有 1 个记录器。没有<Root />记录器。

我正在尝试向我的应用程序添加代码,该代码将检索记录器的文件名,以允许用户从应用程序菜单选择中查看每个附加程序的日志文件。我已经尝试了下面的代码,但它没有返回任何附加程序。我错过了什么?

我还应该提到我正在使用 slf4net.log4net 门面

0 投票
1 回答
701 浏览

log4net - 翻转后 Log4net 丢失信息

我今天发现我们的生产系统在他们的日志文件中丢失了很多东西。我们当前的日志文件包含所有内容(从午夜到午夜),但是当我查看前一天的日志时,它会在凌晨 1 点左右停止。

我已经查看了过去几个月创建的日志,并且在切割日志时非常随机。大多数情况下,它在 2400 和 0300 之间。

这会输出带有错误的 XML 文件(我使用 YALV!来读取我们的日志)。我们的 Log4net 版本是 1.2.10(我们无法升级它,因为它带有第三方软件,如果更改 log4net 似乎会崩溃。

编辑1:

我正在运行一个 CMS 站点(EPiServer 6 R2)- IIS7 负载平衡中的 .NET4(4 个服务器 + 1DB)。昨天的 50MB 日志滚动到 4KB 的日志。

0 投票
1 回答
162 浏览

log4net - 何时调用 FileAppender.Append(LoggingEvent[] loggingEvents)?

我有一个 FileAppender,通常事件是通过 Append(LoggingEvent loggingEvent) 方法登录的,所以每次只有一个事件。我有一个问题,在哪些情况下会调用 Append(LoggingEvent[] loggingEvents) 方法?我知道当有一系列事件要记录时,但我的问题是,我如何模拟一系列事件的情况?为了调用 FileAppender.Append(LoggingEvent[] loggingEvents) 必须发生什么?

0 投票
1 回答
1398 浏览

log4net-appender - log4net reconnectonerror - 是否需要连接超时?

我们有许多使用 log4net 记录到 sql server 数据库的 .NET 应用程序。由于各种原因(与 log4net 无关......我认为)有时记录会停止。应用程序可能会继续工作,但在回收 IIS 应用程序池之前不会继续记录。显而易见的解决方案是将 reconnectonerror 添加到 log4net 附加程序。但是,据我了解,始终建议将“connect timeout=1”添加到附加的连接字符串中。为什么?

我的意思是...

如果 log4net 日志在没有“连接超时 = 1”的情况下工作,为什么包括添加“连接超时 = 1”很重要?

0 投票
1 回答
1658 浏览

logging - 使用 Log4net 每天将日志写入不同的文件夹

我想每天用 log4net 记录不同的文件夹。

到目前为止我发现的是使用带有 RollingFileAppender 的数据模式:

但这只是在 Logs 文件夹下创建相同的新文件。我想要的是,

在每个不同的日子记录器创建新文件夹并在该文件夹下写入日志,例如:

日志\Day1\logfile.log, Logs\Day2\logfile.log, Logs\N\logfile.log, ...

在 Log4net 中可以吗?

0 投票
1 回答
168 浏览

vb.net - 获取 Web.config log4net 部分参数

我有一个使用log4net记录消息的应用程序。在web.config中有一个部分如下所示:

我的问题是:我怎样才能name.log从这个部分获得价值?

我试过这个:

但是由于该值在该appender部分中,因此我不确定如何获取它。

任何帮助将不胜感激