Web API log4net不会在每个请求上创建新的日志文件

时间:2018-07-10 06:06:47

标签: c# logging asp.net-web-api2 log4net

每次发送API请求时,我都想创建一个新文件。因此,为此,我对solution进行了一些修改,例如波纹管

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="f:\MyLog\LogFile-%date{yyyy.MM.dd-hh_mm_ss}.log" />
<appendToFile value="false" />    
<maxSizeRollBackups value="-1" /> <!--infinite-->
<staticLogFileName value="true" />
<rollingStyle value="Composite" />
<layout type="log4net.Layout.PatternLayout">
 <param name="ConversionPattern" value="%date [%thread] %-5level %logger - %meesage%newline"/>
</layout>

它将创建一个类似LogFile-2018.07.10-10_25_11的文件。我正在通过postman测试API。因此,当我运行程序并发送相同或不同API的多个请求时,它将过程添加到同一日志文件中。它不会替代先前的日志详细信息,而是在新行中显示新请求。这样,如果发送了多个请求,则日志将相互混合,并且我无法找到哪个请求的日志详细信息。

创建新日志文件的唯一方法是停止程序,然后运行它。但是在生产环境中,API随时可用。

如何在发送每个新请求时创建一个新的日志文件?

任何帮助将不胜感激。

0 个答案:

没有答案