У меня есть веб-сервис, который используется через jquery ... теперь проблема в том, что я хочу добавить отладку из nlog, чтобы я мог видеть, как на самом деле идет поток ... я подумал, что вариант nlog для отладки ... ,
вот мой конфиг и код
<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.