You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Kristian Rosenvold (JIRA)" <ji...@codehaus.org> on 2010/04/12 20:29:12 UTC

[jira] Issue Comment Edited: (MNG-2727) Fix Logging in threadsafe components

    [ http://jira.codehaus.org/browse/MNG-2727?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=217694#action_217694 ] 

Kristian Rosenvold edited comment on MNG-2727 at 4/12/10 1:27 PM:
------------------------------------------------------------------

I am a bit unsure of exactly which application use-case is being addressed in this issue;

For the current concurrency effort (MNG-3004) my current favourite strategy is replacing the LoggerManager with a ConcurrentLoggerManager that 
provides a MavenProject-aware proxy for the existing logger subsystem. Such a proxy would typically be able to collect all logger output for
the project to a single outputstream, no matter how this intertwines with other builds.

A rough draft of this logic can be seen in LifecycleThreadedBuilder line 164 & 167, where the MavenProject is associated with the current thread (Code is commented out because the current implementation is not good enough). This association changes logger output, and the setThisModuleComplete releases the output.

I fully sense that there may be some other use cases, possibly related to embedding. But it seems like a solution that captures the "logical stream" that constitutes the output from a single build should be expandable to these different cases.

      was (Author: krosenvold):
    I am a bit unsure of exactly which application use-case is being addressed in this issue;

For the current concurrency effort (MNG-3004) my current favourite strategy is replacing the LoggerManager with a ConcurrentLoggerManager that 
provides a MavenProject-aware proxy for the existing logger subsystem. Such a proxy would typically be able to collect all logger output for
the project to a single outpustream, no matter how this intertwines with other builds.

A rough draft of this logic can be seen in LifecycleThreadedBuilder line 164 & 167, where the MavenProject is associated with the current thread (Code is commented out because the current implementation is not good enough). This association changes logger output, and the setThisModuleComplete releases the output.

I fully sense that there may be some other use cases, possibly related to embedding. But it seems like a solution that captures the "logical stream" that constitutes the output from a single build should be expandable to these different cases.
  
> Fix Logging in threadsafe components
> ------------------------------------
>
>                 Key: MNG-2727
>                 URL: http://jira.codehaus.org/browse/MNG-2727
>             Project: Maven 2 & 3
>          Issue Type: Task
>          Components: Embedding
>            Reporter: Jason van Zyl
>            Assignee: Jason van Zyl
>             Fix For: 3.0-beta-2
>
>


-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira