Nlog: Logs location overwritten by code still logging happening at config location.

Created on 13 Oct 2019  路  4Comments  路  Source: NLog/NLog

NLog version - 4.4.3

Platform - .Net 4.5.2

Current NLog config -

<nlog autoReload="true" xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <variable name="layout" value="${longdate}|${level:uppercase=true}|${threadid}|${logger}|${message}" />
  <variable name="logLocation" value="logs" />
  <targets async="true">
    <target name="debugger" xsi:type="Debugger" layout="${layout}" />
    <target name="console" xsi:type="Console" layout="${layout}" />
    <target name="logfile" 
            xsi:type="File" 
            fileName="${logLocation}\${processname}.log" 
            archiveFileName="${logLocation}\\${processname}.{###}.log" 
            archiveEvery="Day" 
            archiveAboveSize="2048000" 
            archiveNumbering="Rolling" 
            maxArchiveFiles="10" 
            concurrentWrites="false" 
            keepFileOpen="false" 
            layout="${layout}" />
  </targets>
  <rules>
    <logger name="*" minlevel="Info" writeTo="logfile" />
    <logger name="*" minlevel="Debug" writeTo="debugger" />
    <logger name="*" minlevel="Info" writeTo="console" />
  </rules>
</nlog>

Code to override location
C# LogManager.ReconfigExistingLoggers(); var target = (FileTarget)LogManager.Configuration.FindTargetByName<AsyncTargetWrapper>("logfile").WrappedTarget; target.FileName = $@"..\..\..\..\logs\Foobar.log";

  • What is the current result?
    When application/service starts it writes to overwritten location, but sometimes (not sure of scenario - _maybe_ rollover) it start writing to config location.

  • What is the expected result?
    Logs should always be written to overwritten location.

  • Did you checked the Internal log?
    No

  • Please post full exception details (message, stacktrace, inner exceptions)
    No Exception

  • Are there any workarounds? yes/no
    Restart service/application.

  • Is there a version in which it did work?
    No idea. This is the version we started with and sticking to.

  • Can you help us by writing an unit test?
    Unit tests won't help as it is an intermittent scenario.

question

All 4 comments

Hi! Thanks for opening your first issue here! Please make sure to follow the issue template - so we could help you better!

answered on SO :)

Thanks @304NotModified :)

Was this page helpful?
0 / 5 - 0 ratings

Related issues

linmasaki picture linmasaki  路  3Comments

ErcinDedeoglu picture ErcinDedeoglu  路  3Comments

vasumsit picture vasumsit  路  3Comments

Jerefeny picture Jerefeny  路  3Comments

FaMouZx3 picture FaMouZx3  路  3Comments