9

使用 log4net 时,有什么方法可以根据日志消息的级别进行不同的布局?比如说,如果是致命错误,我想查看所有可能的信息——类名、方法名、行号等。但是对于正常、调试和警告,我只想看到消息(我希望,这可以提高性能)。

我在 C# WinForms 中使用 log4net。我的要求是在发生致命错误时将所有先前的 512 条消息记录到文件中,并且我只想查看致命错误的类名、方法名、行号等,对于所有其他级别,只是一条消息。

4

3 回答 3

2

这篇文章对 log4net 配置文件有很好的解释:

log4net 配置

注意 appenders 中的布局元素。它们定义了如何输出错误和您选择的任何信息的模式。

于 2008-09-24T14:13:31.827 回答
2

我认为您正在寻找 LevelRangeFilter 和两个附加器组合。一个用于 FATAL 级别的附加器/过滤器组合(致命是最小值和最大值)和一个用于其他任何东西的附加器/过滤器组合(错误或信息是最大值,具体取决于您是否想包含用于调试目的的错误)

此处的示例:您的 log4net 配置中有什么?黑客、优化、观察?

于 2010-10-22T17:26:23.747 回答
1

您可以为每个“关卡”使用不同的 Appender,并让它们相同,但用于模式布局。

于 2008-09-24T13:53:33.780 回答