开发者

Log file is coming blank after error in Log4Net

I want to use Log4Net in my asp.net application & I have done the following things:

In Web.Config File

<configSections>
  <section  name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/>
</configSections> 
<log4net>
  <logger name="File">
    <level value="All" />
    <appender name="LogFileAppender" type="log4net.Appender.FileAppender">
      <param name="File" value="Logs\\Log4Net.log"/>
      <layout type="log4net.Layout.PatternLayout">
        <param name="ConversionPattern" value="%d [%t] %-5p %c %m%n"/>
      </layout>
    </appender>
  </logger>
</log4net>

In Global.asax

<%@ Application Language="C#" %>

<script runat="server">

void Application_Start(object sender, EventArgs e) 
{
    // Code that runs on application startup
    log4net.Config.XmlConfigurator.Configure();

}

and on Page_load

try
{
    // There is no such Session, this is just to create error
    if (Session["userName"].ToString() == "Admin")
    {

    }
}
catch(Exception ex)
{
     log4net.ILog logger = log4net.LogManager.GetLogger("File");
}

I have added the reference too in my BIN folder.

When I run my code, I got the error as per the expectation and after that new folder is created in my solution explorer with Log File. But the log file is empty.

I have no guess that why it happened, is it not able to track or re开发者_如何学Gocord the error??

Please help. Thanks in advance.


As leppie pointed out, there seems not to be any code that writes a log message. Your excpetion handler should propably look like this:

catch(Exception ex)
{
    log4net.ILog logger = log4net.LogManager.GetLogger("File");
    logger.Error("something went wrong", ex);
}

The configuration you posted also seems incomplete. You need a log4net section (cf. example configurations).

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜