当配置发生更改时,Log4Net可以正常工作,但IIS重置会使其停止工作

时间:2014-01-22 12:58:22

标签: c# asp.net-mvc iis log4net

我们在几个MVC项目中使用Log4net,在我们最近的一个项目中似乎没有用。当我对log4net.config进行配置更改时,它将继续记录,直到应用程序池回收或iis重置。

这在我们的任何其他项目中都没有发生并且工作正常,我甚至复制了它似乎不想记录的配置文件。

我尝试在AssemblyInfo.cs中放置[assembly: log4net.Config.XmlConfigurator()] 我还尝试将log4net.Config.XmlConfigurator()放在global.asax

中的application_start中

无论我做什么都没关系,它只是不记录。

以前是否有人遇到此问题?

编辑:忘记提及它可以正常记录到日志文件,并且每次都会记录。这仅用于登录sql server!

1 个答案:

答案 0 :(得分:1)

这可能是一些问题。

我建议首先检查.xmlConfigurator()是否在application_start中调用。 第二,确保应用程序池明确与应用程序关联,然后检查进程标识 应用程序池的默认值如果默认为ApplicationPool标识,请确保默认的“iis_user”具有足够的写入权限 到目录log4Net被配置为写入,因为你可能有NTFS ace问题,如果位置在 C:\ inetpub \ wwwroot文件夹尝试将标识更改为NetworkService或具有足够权限的自定义标识以写入文件夹。

最后,检查您的Windows事件日志。

干杯