0

我想在 WCF 服务中使用一个记录器,它有两个服务暴露在外面。而且我想要一个基于每日的(每天都有新的基于日期的记录器文件),还需要两个服务的单独的记录器文件。我可以使用哪些 .NET 记录器,可以在哪里实现上述功能?

我尝试使用 Log4Net。但我没有得到如何更改日志文件名,除了在配置文件中指定的,以满足我的要求。

4

1 回答 1

0

这是一个你可以尝试的例子。滚动文件附加程序。将每 10MB 创建一个新文件。日期更改时也会生成新文件。

<appender name="LogFileAppender" type="log4net.Appender.RollingFileAppender">
  <param name="File" value="C:\\SomeFolder\\SomeFileName" />
  <param name="AppendToFile" value="true" />
  <param name="MaxSizeRollBackups" value="-1" />
  <param name="MaximumFileSize" value="10MB" />
  <param name="RollingStyle" value="Composite" />
  <param name="StaticLogFileName" value="false" />
  <param name="datePattern" value="yyyyMMdd'.log'" />
  <layout type="log4net.Layout.PatternLayout">
    <param name="ConversionPattern" value="%date [%-7logger] [%-5level] [%5thread] - %message%newline" />
  </layout>
</appender>

如果你想让不同的东西去不同的文件,你可以设置多个附加程序。然后,您将特定的日志类别与特定的附加程序相关联。这里有一个例子:-
根据情况将log4net登录到不同的appender

于 2013-01-11T11:02:50.567 回答