Я обнаружил странную ошибку, связанную с NLog (ver2.1.0.0) в одном из наших старых приложений .net windows form.
Я внес изменение в приложение и смог успешно запустить и протестировать изменение без проблем.Когда мы загрузили его на наш сервер QA (я полагаю, в Windows Server 2008), мы получаем следующую ошибку: Произошла ошибка при создании обработчика раздела конфигурации для nlog: возникла исключительная ситуация при загрузке конфигурации из строки .exe.Config 58
Как ни странно, я не могу понять, почему это происходит.Вот мой код app.config для nLog.Строка 58 - первая строка, начинающаяся с
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
throwExceptions="true" internalLogFile="c:\temp\nlog.txt" internalLogLevel="Debug">
<variable name="applicationName" value="Load Import"/>
<targets>
<target name="console" type="Console" layout="${date:format=HH\:mm\:ss} ${logger} ${level} ${message}${onexception:${newline}Exception\:${newline}${exception:format=tostring}}" />
<target name="mail" xsi:type="Mail" smtpServer="relay.ourcompany.com" from="" to="" addNewLines="true" subject="ImportBill - ${level} ${onexception: Exception}" layout="Date: ${longdate}${newline}Level: ${uppercase:${level}}${newline}Logger: ${logger}${newline}Machine: ${machinename}${newline}Message: ${message}${onexception:${newline}Exception\:${newline}${exception:format=tostring}}${newline}" />
<target name="database" xsi:type="Database" connectionStringName="Logging" keepConnection="true">
<commandText>
exec [nlog].[Message_Add]
@LogDate = @logDate,
@MachineName = @machineName,
@ProcessName = @processName,
@Version = @assemblyVersion,
@Logger = @logger,
@LogLevel = @logLevel,
@Origin = @callSite,
@Message = @message,
@Exception = @exception,
@StackTrace = @stackTrace,
@WindowsIdentity = @windowsIdentity,
@BaseDirectory = @baseDirectory,
@AdditionalInfo = @additionalInfo,
@RequestIdentifier = @requestIdentifier,
@Log4JEvent = @log4jEvent
</commandText>
<parameter name="@logDate" layout="${date:format=yyyy-MM-dd HH\:mm\:ss.fff}" />
<parameter name="@machineName" layout="${machinename}" />
<parameter name="@ProcessName" layout="${processname}" />
<parameter name="@assemblyVersion" layout="${assembly-version}" />
<parameter name="@logger" layout="${logger}" />
<parameter name="@logLevel" layout="${level}" />
<parameter name="@callSite" layout="${callsite}" />
<parameter name="@message" layout="${message}" />
<parameter name="@exception" layout="${exception:format=tostring}" />
<parameter name="@stackTrace" layout="${stacktrace}" />
<parameter name="@windowsIdentity" layout="${windows-identity}" />
<parameter name="@baseDirectory" layout="${basedir}" />
<parameter name="@additionalInfo" layout="${mdc:item=AdditionalInfo}" />
<parameter name="@requestIdentifier" layout="" />
<parameter name="@log4jEvent" layout="<?xml version="1.0" ?><data xmlns:log4j="http://jakarta.apache.org/log4j/" xmlns:nlog="http://nlog-project.org/">${log4jxmlevent:includeSourceInfo=true:includeCallSite=true:includeMdc=true:includeNdc=true}</data>" />
</target>
</targets>
<rules>
<logger name="*" minlevel="Trace" maxLevel="Fatal" writeTo="database" />
<logger name="*" minlevel="Error" maxLevel="Fatal" writeTo="mail" />
</rules>
Есть идеи, что может быть причиной этого?
Спасибо