EventLogAppender - 如何停止将错误记录到应用程序事件日志中

发布于 2024-12-22 07:36:04 字数 1418 浏览 6 评论 0原文

我正在使用 log4net – EventLogAppender 将应用程序错误记录到自定义日志中。发生这种情况,但错误也会记录在应用程序日志中。由于我有自己的自定义事件日志 myLog,是否可以阻止将错误记录到默认日志应用程序中?

<log4net debug="true">
  <appender name="sendAlertAppender" type="sendAlertAppender.MultiThresholdNotifyingAppender,sendAlertAppender">      
    <LevelThreshold  value="ERROR"/>      
  <appender-ref ref="EventLogAppender"/>
  </appender>

  <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
    <param name="LogName" value="xxxWebLogs" />
    <param name="ApplicationName" value="xxx" />
    <eventId value="5" />
    <eventCategory value="10" />
    <filter type="log4net.Filter.LevelRangeFilter">
      <acceptOnMatch value="true" />
      <levelMin value="INFO" />
      <levelMax value="FATAL" />        
    </filter>
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
    </layout>
  </appender>
  <root>
    <level value="ALL"/>
    <priority value="DEBUG" />
    <appender-ref ref="sendAlertAppender"/>
    <appender-ref ref="EventLogAppender"/>
  </root>
</log4net>

在此处输入图像描述

I am using log4net – EventLogAppender to log the application errors to a custom log. This happens, but the errors are also logged in Application log. Since I have my own custom event log say myLog, is it possible to stop the errors being logged into default log Application?

<log4net debug="true">
  <appender name="sendAlertAppender" type="sendAlertAppender.MultiThresholdNotifyingAppender,sendAlertAppender">      
    <LevelThreshold  value="ERROR"/>      
  <appender-ref ref="EventLogAppender"/>
  </appender>

  <appender name="EventLogAppender" type="log4net.Appender.EventLogAppender">
    <param name="LogName" value="xxxWebLogs" />
    <param name="ApplicationName" value="xxx" />
    <eventId value="5" />
    <eventCategory value="10" />
    <filter type="log4net.Filter.LevelRangeFilter">
      <acceptOnMatch value="true" />
      <levelMin value="INFO" />
      <levelMax value="FATAL" />        
    </filter>
    <layout type="log4net.Layout.PatternLayout">
      <conversionPattern value="%date [%thread] %-5level %logger [%property{NDC}] - %message%newline" />
    </layout>
  </appender>
  <root>
    <level value="ALL"/>
    <priority value="DEBUG" />
    <appender-ref ref="sendAlertAppender"/>
    <appender-ref ref="EventLogAppender"/>
  </root>
</log4net>

enter image description here

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

纸伞微斜 2024-12-29 07:36:04

我仍然不确定您的问题是什么,但查看配置,我认为您需要更改 LogName 设置:

<param name="LogName" value="PortalWebLogs" />

如果这不起作用,则可能是权限问题。请参阅此处了解更多信息:

log4Net EventlogAppender 不适用于 Asp.Net 2.0 网站?

I'm still not sure what your issue is, but looking at the configuration I believe you need to change the LogName setting:

<param name="LogName" value="PortalWebLogs" />

If this doesn't work, it could be a permissions issue. See here for more information:

log4Net EventlogAppender does not work for Asp.Net 2.0 WebSite?

绮烟 2024-12-29 07:36:04

我还没有使用事件日志附加器做太多事情,所以我不太确定。这是另一个讨论它的问题,在答案中,它显示使用带有 value 属性的 logName 元素而不是 param 元素。也许值得尝试一下。

为 log4net 配置自定义事件日志

I haven't done much with using the event log appender, so i'm not really sure. here's another question talking about it and in the answer, it shows using a logName element with a value attribute instead of a param element. might be worth trying that.

Configuring a custom event log for log4net

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文