[
https://issues.apache.org/jira/browse/CAMEL-11352?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16028793#comment-16028793
]
ASF GitHub Bot commented on CAMEL-11352:
----------------------------------------
GitHub user xldai opened a pull request:
https://github.com/apache/camel/pull/1727
fix CAMEL-11352
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/xldai/camel master
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/camel/pull/1727.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #1727
----
commit 2689846973276af9d9105924e8299bba10fc7b73
Author: xldai <[email protected]>
Date: 2017-05-30T06:56:47Z
fix CAMEL-11352
----
> duplicated/missing logs when camel-paxlogging work with pax-logging-log4j2
> --------------------------------------------------------------------------
>
> Key: CAMEL-11352
> URL: https://issues.apache.org/jira/browse/CAMEL-11352
> Project: Camel
> Issue Type: Bug
> Affects Versions: 2.17.6, 2.19.0
> Reporter: Xilai Dai
>
> This problem is found after switch to the karaf 4.1.x, which using
> pax-logging-log4j2 insteadof pax-logging-service.
> I created a small test case project for reproduce this issue.
> https://github.com/xldai/test/tree/master/test-paxlogging-camel
> The findings from me is that, when PaxLoggingConsumer class [1] work together
> with pax-logging-service (karaf 4.0.x), it creates new threads to process the
> incoming PaxLoggingEvent and using MDC to filter the possible duplicated logs
> from PaxAppenderProxy class [2].
> but when PaxLoggingConsumer class work together with pax-logging-log4j2, the
> multi thread mechanism for processing the PaxLoggingEvent will lead to
> duplicated/missing logs output to the camel Exchange.
> Since the L63 from [3] fixed the possible duplicated logs come from
> PaxAppenderProxy class, I found that the multi thread mechanism and MDC
> checking can be removed from PaxLoggingConsumer class, then it works again as
> expected from my test result.
> [1]
> https://github.com/apache/camel/blob/master/components/camel-paxlogging/src/main/java/org/apache/camel/component/paxlogging/PaxLoggingConsumer.java#L58
> [2]
> https://github.com/ops4j/org.ops4j.pax.logging/blob/logging-1.9.1/pax-logging-service/src/main/java/org/ops4j/pax/logging/service/internal/PaxAppenderProxy.java#L63
> [3]
> https://github.com/ops4j/org.ops4j.pax.logging/blob/logging-1.9.1/pax-logging-log4j2/src/main/java/org/ops4j/pax/logging/log4j2/internal/PaxAppenderProxy.java#L63
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)