Allow plugins to transform the BuildListener log output.

XMLWordPrintable

    • Type: Improvement
    • Resolution: Fixed
    • Priority: Major
    • Component/s: core
    • None
    • Environment:
      Hudson 1.369

      This will be used by the Timestamper plugin to insert a timestamp on each line of the BuildListener output. (Currently it modifies the launcher output instead, which can have unwanted side-effects such as JENKINS-7111.)


      Preferred Approach (JENKINS-7112_decorateLogger.patch)
      Add a decorateLogger method to the BuildWrapper class, which can be optionally overridden to wrap the BuildListener's default logger.


      Alternate Approach (JENKINS-7112.patch)
      Add a decorateBuildListener method to the BuildWrapper class, which can be optionally overridden to wrap the default BuildListener. I have decided to not use this approach, since:

      • Other than wrapping the logger, it doesn't seem useful for plugins to alter the behaviour of the BuildListener.
      • It would make it more difficult to evolve the BuildListener interface in future.

      Both patches were created from the directory:
      https://hudson.dev.java.net/svn/hudson/trunk/hudson/main/core/

      Will ask for feedback from the dev mailing list before proceeding.

            Assignee:
            Steven G Brown
            Reporter:
            Steven G Brown
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: