Nlog Logger.Info无效

时间:2011-11-08 11:54:57

标签: nlog

我有一个通过jquery消耗的web服务...现在问题是我想从nlog中调入一些调试,以便我可以看到流程实际上是如何进行的...我认为nlog是debuging的选项... 。 这是我的配置和代码

<targets>
<target name="file" xsi:type="File"
    layout="${longdate} ${logger} ${message}"
    fileName="${basedir}/Logs/${shortdate}.log" />
</targets>

<rules>
<logger name="*" minlevel="Debug" writeTo="file"  />
<logger name="*" minlevel="Error" writeTo="file" />
<logger name="*" minlevel="Fatal" writeTo="file" />
<logger name="*" minlevel="Info" writeTo="file" />
</rules>

和我给出的用于获取调试信息的记录器类是

[ScriptService]
public class Service : System.Web.Services.WebService
{
    Logger logger = LogManager.GetCurrentClassLogger();
    [WebMethod]
    public String GetAgentDetails(String AgentId)
    {
        logger.Info("This is webservice");
        String result = string.Empty;
        try
        {
            using (ISession session = NhibernateHelper.Opensession())
            {
                logger.Info("Enters Session");
                 var agent = GetAgent(); // Gets the agent object
                 result = JsonConvert.SerializeObject(agent);
                 logger.Info(result);
                 return result;
            }
        }
        catch (InvalidOperationException ioe)
        {
            logger.Error(ioe.Message);
            logger.Fatal(ioe.Message);
            logger.Error(ioe.InnerException);
            logger.Fatal(ioe.InnerException);
            return null;
        }
        catch (Exception ex)
        {
            logger.Error(ex.Message);
            logger.Fatal(ex.Message);
            logger.Error(ex.InnerException);
            logger.Fatal(ex.InnerException);
        }
        return result;
    }
}

当通过jquery脚本访问时,它应该写了日志信息,我写了logger.info(结果),但似乎没有创建日志文件。有人解释什么问题?但是,相同的日志文件适用于所有其他类。没问题。如果抛出异常,则会创建日志文件并写入日志。但在这种情况下,logger.info没有发生。我正在使用Nlog 2.0与Asp.net 3.5 SP1。

0 个答案:

没有答案