非常简单的问题 - >我似乎无法在我的ASP.NET应用程序中从Log4Net获取任何数据.我有一个简单的ASP.NET网站,它引用了一个类库.在这个类库中,我有一些调用记录器的行.
我正在尝试在Visual Studio 2008调试输出窗口中读取log4net输出数据.
这是我的代码和我的配置......
//Class Library project //File: Foo.cs public class FooService { private static readonly ILog log = LogManager.GetLogger(typeof(FooService)); public FooService() { // NOTE: To play with my L4N settings, I'll call Debug once, then Info once. log.Info("Starting Constructor"); // ... snip ... log.Debug("Leaving Constructor"); } } // ASP.NET Website project // File: global.asax void Application_Start(object sender, EventArgs eventArgs) { log4net.Config.XmlConfigurator.Configure(); } // File: Whatever.aspx.cs // A delegate method (when a user clicks a button) creates the FooService() instance. // File: web.config// ....
欢呼任何帮助或建议......
编辑:添加了RollingLogFileAppender.
ASP.Net对文件系统访问的使用有限制,所以尝试在App_Data下明确指向目录(是否允许)在这里我的工作示例:
或翻滚
我有同样的问题,我认为它正在查看错误的web.config或其他东西.我终于从web.config中分离出log4net.config并将路径放到它\ inetpub\Logs\log4net.config并且一切都很顺利.
UDPATED ON REQUEST:从稍微复杂的版本编辑.
\
它在代码中配置如下:
var logpath = WebConfigurationManager.AppSettings["LogConfigPath"] ?? @"\Inetpub\Logs\log4net.config"; var finfo = new System.IO.FileInfo ( logpath ); XmlConfigurator.Configure( finfo );