2011-07-17 15 views
18

¿En NLog es posible crear varios registradores con configuraciones diferentes?Tener registradores NLog con configuración diferente

Tengo un componente que cada vez que se instancia, debe registrar todos los eventos en un archivo diferente que esté relacionado con la nueva instancia.

¿Esto es posible con NLog? Si no, hay marcos de registro que hacen eso?

Respuesta

21

Sí, puedes hacer eso. Puede configurar el registrador para ese tipo para iniciar sesión en un objetivo específico. O puede configurar el registrador para ese tipo para que se registre en un destino (como un archivo), nombrando el archivo (automáticamente) según el nombre del registrador.

Vea el NLog config file documentation here para algunos ejemplos.

También, vea mi post here para algunas sugerencias de archivos de configuración.

Aquí hay un ejemplo muy breve de cómo puede configurar dos registradores: uno para un tipo específico para registrarse en un archivo de salida llamado para ese tipo y otro para todos los demás registradores para iniciar sesión en un archivo basado en la fecha.

<nlog> 
    <targets> 
    <target name="f1" xsi:type="File" fileName="${logger}.txt" /> 
    <target name="f2" xsi:type="File" fileName="${shortdate}.txt" /> 
    </targets> 
    <rules> 
    <logger name="Name.Space.Class1" minlevel="Trace" writeTo="f1" /> 
    <logger name="*" levels="Debug" writeTo="f2" /> 
    </rules> 
</nlog> 

Si desea que los registros de tipo Name.Space.Class1 para ir al archivo "especial" (es decir, la persona cuyo nombre está determinado por el registrador), entonces se puede añadir "final" al registrador specfication así:

<logger name="Name.Space.Class1" minlevel="Trace"final="true" /> 
+2

nueva configuración de enlace del archivo https://github.com/nlog/NLog/wiki/Configuration-file –

Cuestiones relacionadas