You are viewing a plain text version of this content. The canonical link for it is here.
Posted to log4net-dev@logging.apache.org by "Maxim Cherednik (JIRA)" <ji...@apache.org> on 2015/07/30 10:56:04 UTC

[jira] [Created] (LOG4NET-469) Fixes for the LogicalThreadContext

Maxim Cherednik created LOG4NET-469:
---------------------------------------

             Summary: Fixes for the LogicalThreadContext
                 Key: LOG4NET-469
                 URL: https://issues.apache.org/jira/browse/LOG4NET-469
             Project: Log4net
          Issue Type: Bug
          Components: Core
    Affects Versions: 1.3.0
            Reporter: Maxim Cherednik


This is related to issue number 455. (Link to github: https://github.com/apache/log4net/pull/12)

I was playing around with this fix recently and came across some strange behavior.
Imagine main method:
{code:title=main.cs|borderStyle=solid}
using (LogicalThreadContext.Stacks["NDC"].Push("Start"))
{
    // init all the stuff here
    _timer.TimerElapsed += TimerOnTimerElapsed;
}
{code}
An that would be it.

When I am on the timer tick event I have another context:

{code:title=timer.cs|borderStyle=solid}
using (LogicalThreadContext.Stacks["NDC"].Push("timer"))
{
    Logger.Info("I am doing something here. Show me the context");
}
{code}

As a result expect to see the context of the timer like this: "timer", 
instead, I see: "Start timer"

Is this correct behavior?



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)