NLog lança exceção de configuração em todos os renderizadores de layout aspnet
Estive trabalhando para configurar o NLog v2 no meu aplicativo ASP.NET MVC 3 e até agora funcionou muito bem. (Estou usando o pacote do repositório oficial nuGet) No entanto, quando tento alterar o layout do log para incluir qualquer um dos renderizadores de layout aspnet- *, recebo um erro de configuração. Reduzi o problema para o seguinte caso de uso mínimo:
No bloco configSections:
<section name="nlog" type="NLog.Config.ConfigSectionHandler, NLog"/>
O bloco Nlog:
<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" throwExceptions="true">
<variable name="logDirectory" value="C:\Logs" />
<targets>
<target name="logFile" xsi:type="File" fileName="${logDirectory}\app.log"
layout="${aspnet-user-identity}" />
</targets>
<rules>
<logger name="*" minlevel="Info" writeTo="logfile" />
</rules>
Se eu mudar o layout, use qualquer combinação de renderizadores que não façam parte da família aspnet *, isso funcionará bem (eu não testei todos, mas observei alguns). O erro que recebo está aqui:
Configuration Error
Description: An error occurred during the processing of a configuration file required to service this request. Please review the specific error details below and modify your configuration file appropriately.
Parser Error Message: An error occurred creating the configuration section handler for nlog: Exception occurred when loading configuration from C:\..[snip]..\web.config
Source Error:
Line 16: </configSections>
Line 17:
Line 18: <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd"
Line 19: xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" throwExceptions="true">
Line 20:
Eu realmente não tenho ideia do que está acontecendo. Não tenho certeza do que esse processador faz com que a configuração se torne inválida. Eu estive brigando com ele a maior parte do dia e não cheguei a lugar nenhum, então espero que alguém aqui possa ajudar.
Obrigado