2011-02-09 50 views
0

我的网站在IIS中以ASP.NET用户身份运行。我创建了一个虚拟目录'Logs',它在内部指向我的共享驱动器文件夹,该文件夹由有限数量的用户访问。我如何使用log4net在虚拟目录上创建日志文件?如何在ASP.NET网站虚拟目录上编写日志?

当我创建记录器或文件时,我(或可以)提供用户凭据吗?

+0

什么样的日志文件?你不能只将IIS日志指向你的虚拟目录吗? – 2011-06-15 22:04:16

回答

0

看起来好像有no problem将日志文件写入您网站上的虚拟目录。你只要告诉log4net的这条道路通过写配置

<appender ...> 
    <file value="Logs\website.log" /> 
</appender> 

现在,如果你想要把当前用户名在日志消息是相对于当前目录下,你需要调查log4net的Contexts。积攒在log4net的背景下

log4net.ThreadContext.Properties["user"] = HttpContext.Cache["current-user"]; 

当前用户,并拉出中追加程序layout

<appender ...> 
    <layout ...> 
     <conversionPattern value="%date %-5level [%property{user}] %message%newline" /> 
    </layout> 
</appender>