Rob*_*Rob 13 asp.net log4net web-config .net-3.5 global-asax
我在使用ASP.NET 3.5上运行log4net时遇到了一些麻烦.这是我第一次尝试使用log4net,我觉得我错过了一块拼图.
我的项目引用了log4net程序集,据我所知,它正在我的服务器上成功部署.
我的web.config包含以下内容:
<configSections>
<section name="log4net"
type="log4net.Config.Log4NetConfigurationSectionHandler
, log4net"
requirePermission="false"/>
</configSections>
<log4net>
<appender name="InfoAppender" type="log4net.Appender.FileAppender">
<file value="..\..\logs\\InfoLog.html" />
<appendToFile value="true" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern
value="%d [%t] %-5p %c [%x] - %m%n" />
</layout>
</appender>
<logger name="_Default">
<level value="INFO" />
<appender-ref ref="InfoAppender" />
</logger>
</log4net>
Run Code Online (Sandbox Code Playgroud)
我正在使用以下代码来测试记录器:
using log4net;
using log4net.Config;
public partial class _Default : System.Web.UI.Page
{
private static readonly ILog log = LogManager.GetLogger("_Default");
protected void Page_Load(object sender, EventArgs e)
{
log.Info("Hello logging world!");
}
}
Run Code Online (Sandbox Code Playgroud)
在我的Global.asax中,我正在做以下事情:
void Application_Start(object sender, EventArgs e)
{
log4net.Config.XmlConfigurator.Configure();
}
Run Code Online (Sandbox Code Playgroud)
在这一点上,我想不出还有什么我可能做错了.我试图存储登录的目录是可写的,即使我尝试不同的目录,我得到相同的结果:没有文件,没有日志.
有什么建议?:-)
编辑:我已经尝试了几种不同格式的日志文件的路径和名称,其中一些包括"..\..\InfoLog.html","InfoLog.html","logs\InfoLog.html"等,以防万一有人想知道这是不是问题.
编辑:我已经将根记录器节点添加回log4net部分,我忽略了从样本中复制时的意外情况.根记录器节点如下所示:
<root>
<level value="INFO" />
<appender-ref ref="InfoAppender" />
</root>
Run Code Online (Sandbox Code Playgroud)
然而,即便如此,我仍然没有运气.
CVe*_*tex 13
我认为根记录器是强制性的.我怀疑配置失败,因为root不存在.
另一个潜在的问题是Configure没有指向Web.config.
请尝试配置(Server.MapPath("〜/ web.config")).
这听起来非常像我的文件权限问题.如果指定不带任何路径的文件名,log4net将写入Web应用程序的根目录.试试吧.除非在那里取得任何成功,否则我建议您通过在web.config中添加以下内容来启用内部log4net调试:
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="log4net.Internal.Debug" value="true"/>
</appSettings>
</configuration>
Run Code Online (Sandbox Code Playgroud)
然后,部署以调试模式编译的应用程序并运行visual studio远程调试程序以查看引发的任何错误.
| 归档时间: |
|
| 查看次数: |
15500 次 |
| 最近记录: |