Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Разработка под ASP.NET > nlog неверная конфигурация данных в web.config


Автор: Kolovorot 6.6.2013, 15:54
Установил пакет NLog прописал в Web.Config:
Код

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <targets>
      <target name="logfile" xsi:type="File" fileName="D://file.txt" />
    </targets>
    <rules>
      <logger name="*" minlevel="Info" writeTo="logfile" />
    </rules>
  </nlog>


При запуске получаю ошибку:
Ошибка HTTP 500.19 - Internal Server Error
Запрашиваемая страница не доступна из-за неверной конфигурации данных для этой страницы.

Пример делаю по след. статье http://habrahabr.ru/post/176001/

Автор: jonie 20.6.2013, 10:55
а саму секцию nlog в web.config объявили?
Вот вам пример неплохого лога который я юзаю кое-где (требуется nlog.extended пакет)
Код

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <configSections>
    <section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog" />
  </configSections>
    <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <extensions>
        <add assembly="NLog.Extended" />
      </extensions>
      <variable name="logDir" value="${basedir}/App_Data/logs/" />
      <variable name="detailedLayout" value="${longdate} - (${level:uppercase=true}) [${threadid}] ${aspnet-user-identity} (${logger}) : ${message} ${exception:format=ToString,StackTrace:separator=&#xD;&#xA;}" />
      <targets>
        <target name="file" xsi:type="File" fileName="${logDir}/app${date:format=yyyy_MM_dd}.log" layout="${detailedLayout}" deleteOldFileOnStartup="false" keepFileOpen="true" />
        <target name="debugger" xsi:type="Debugger" layout="${detailedLayout}" />
        <target name="eventlog" xsi:type="EventLog" layout="${detailedLayout}" source="MySource" log="LOGNAME" />
      </targets>
      <rules>
        <logger name="*" minlevel="Trace" writeTo="file,debugger" />
        <logger name="*" minlevel="Warn" writeTo="eventlog" />
      </rules>
    </nlog>
    <system.diagnostics>
      <trace autoflush="true">
        <listeners>
          <add name="LogFileTraceListener" type="NLog.NLogTraceListener, NLog" />
          <remove name="Default" />
        </listeners>
      </trace>
      <switches>
      </switches>
      <sources />
      <sharedListeners>
        <add name="nlog" type="NLog.NLogTraceListener, NLog" />
      </sharedListeners>
    </system.diagnostics>

  <runtime>
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <dependentAssembly>
        <assemblyIdentity name="NLog" publicKeyToken="5120e14c03d0593c" culture="neutral" />
        <bindingRedirect oldVersion="0.0.0.0-2.1.0.0" newVersion="2.1.0.0" />
      </dependentAssembly>
    </assemblyBinding>
  </runtime>

</configuration>


каталог ~/App_Data/logs/ должен существовать, конечно, и права на него IIS (или в чем вы там это запускете) должны быть соотсветствующие.

Автор: Kolovorot 11.7.2013, 15:26
да дело было в секции smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)