C# 已停止在生产服务器上写入日志文件
编辑-我想我已经发现了根本原因-系统管理员在服务器上安装了NewRelic,它以某种方式覆盖了我的日志记录。有没有办法关掉这个 直到几周前,我有几个应用程序的日志记录还不错——系统管理员发誓说,他这方面没有任何变化,同样,我也不认为我的应用程序有任何变化 应用程序安装在Windows Servier 2012 R2、IIS 8.5上 我使用log4net,配置文件如下所示:C# 已停止在生产服务器上写入日志文件,c#,.net,iis,log4net,C#,.net,Iis,Log4net,编辑-我想我已经发现了根本原因-系统管理员在服务器上安装了NewRelic,它以某种方式覆盖了我的日志记录。有没有办法关掉这个 直到几周前,我有几个应用程序的日志记录还不错——系统管理员发誓说,他这方面没有任何变化,同样,我也不认为我的应用程序有任何变化 应用程序安装在Windows Servier 2012 R2、IIS 8.5上 我使用log4net,配置文件如下所示: <log4net> <root> <level value="ALL" /&g
<log4net>
<root>
<level value="ALL" />
<appender-ref ref="file" />
</root>
<appender name="file" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="logs/application_log.xml"/>
<appendToFile value="true" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j">
<locationInfo value="true"/>
</layout>
<param name="Encoding" value="utf-8" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="5" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
</appender>
</log4net>
- 传统上,我必须在网站根目录中添加一个“logs”文件夹,并将“IIS AppPool\MyAppPool”用户添加到文件夹权限中,以提供完全控制
- IIS应用程序池已设置为ApplicationPoolIdentity
- 我还尝试添加NETWORKSERVICE、IIS/IUSR和其他
我试图解决这个问题的时间太长了,所以我想知道还有什么我可以尝试的吗?当然有!打开log4net的调试日志功能 您的配置应该如下所示
<configuration>
...
<log4net>
<root>
<level value="ALL" />
<appender-ref ref="file" />
</root>
<appender name="file" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="logs/application_log.xml"/>
<appendToFile value="true" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j">
<locationInfo value="true"/>
</layout>
<param name="Encoding" value="utf-8" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="5" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
</appender>
</log4net>
...
<appSettings>
<add key="log4net.Internal.Debug" value="true"/>
</appSettings>
...
<system.diagnostics>
<trace autoflush="true">
<listeners>
<add
name="textWriterTraceListener"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="C:\tmp\log4net.txt" />
</listeners>
</trace>
</system.diagnostics>
...
</configuration>
...
...
...
...
当然有!打开log4net的调试日志功能
您的配置应该如下所示
<configuration>
...
<log4net>
<root>
<level value="ALL" />
<appender-ref ref="file" />
</root>
<appender name="file" type="log4net.Appender.RollingFileAppender">
<file type="log4net.Util.PatternString" value="logs/application_log.xml"/>
<appendToFile value="true" />
<layout type="log4net.Layout.XmlLayoutSchemaLog4j">
<locationInfo value="true"/>
</layout>
<param name="Encoding" value="utf-8" />
<rollingStyle value="Size" />
<maxSizeRollBackups value="5" />
<maximumFileSize value="10MB" />
<staticLogFileName value="true" />
</appender>
</log4net>
...
<appSettings>
<add key="log4net.Internal.Debug" value="true"/>
</appSettings>
...
<system.diagnostics>
<trace autoflush="true">
<listeners>
<add
name="textWriterTraceListener"
type="System.Diagnostics.TextWriterTraceListener"
initializeData="C:\tmp\log4net.txt" />
</listeners>
</trace>
</system.diagnostics>
...
</configuration>
...
...
...
...
这不是我问题的答案,但它让我找到了newrelic面包屑,非常感谢!这不是我的问题的答案,但它让我找到了newrelic面包屑,非常感谢!