为log4net配置自定义事件日志

18
我正在使用log4net进行日志记录。通过使用EventLogAppender,我可以配置我的应用程序名称,以便我的事件将显示在Application/"My Application Name"事件日志中。但是,我想将事件记录到"Some other event log"/"My Application Name"。我该如何进行配置?

当前配置:

<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" >
    <applicationName value="My application Name" />
    <layout type="log4net.Layout.PatternLayout">
        <conversionPattern value="%date [%thread] %-5level %logger - %message%newline" />
    </layout>
</appender>

对于一个EventLogInstaller,代码将如下所示:

eventLogInstaller.Log = "Some other event log"; // Default "Application"
eventLogInstaller.Source = "My application name";
1个回答

25

您可以通过LogName属性来进行控制。

例如:

<appender name="EventLogAppender" type="log4net.Appender.EventLogAppender" >
      <logName value="System" />
      <applicationName value="My application Name" />
      ...
</appender>

2
我已经完成了这个操作,它确实在事件查看器的“应用程序和服务日志”节点下创建了新的日志,但由于某种原因,消息仍然被记录到“应用程序”日志中,而不是新的日志中。 - deadlydog
4
没关系,结果是我需要重新启动电脑才能使更改生效,如https://dev59.com/8VjUa4cB1Zd3GeqPR3sn#6457005和https://dev59.com/qWsz5IYBdhLWcg3w3rwJ所提到的。 - deadlydog

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接