Uploaded image for project: 'Flume'
  1. Flume
  2. FLUME-2008

it would be very convenient to have a fat jar of flume-ng-log4jappender

    Details

    • Type: Improvement
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 1.3.1
    • Fix Version/s: 1.4.0
    • Component/s: Client SDK
    • Labels:
      None

      Description

      It would be extremely convenient to have a single fat jar of flume-ng-log4jappender so that it can be added to the classpath of a particular log4j consumer.

        Activity

        Hide
        rvs Roman Shaposhnik added a comment -

        Attached trivial patch makes an extra jar called flume-ng-log4jappender-1.4.0-SNAPSHOT-jar-with-dependencies.jar show up in under lib.

        Show
        rvs Roman Shaposhnik added a comment - Attached trivial patch makes an extra jar called flume-ng-log4jappender-1.4.0-SNAPSHOT-jar-with-dependencies.jar show up in under lib.
        Hide
        mpercy Mike Percy added a comment -

        Roman, thanks for the patch!

        I wasn't sure about the Maven-fu to achieve this. However I wonder if the lib directory is the right place to put this? The bin/flume-ng script pulls in all the jars in lib/* for the agent classpath. People would need to know to delete this jar if they want to override certain other jar dependencies in their own deployments, just as one example of the confusion this could create.

        Worth noting that I want to do a similar thing for some load testing tools that I have had lying around (but I also want that to be an executable jar). Anyway I think this should go in but I feel like we should create a special place for these little buggers.

        Show
        mpercy Mike Percy added a comment - Roman, thanks for the patch! I wasn't sure about the Maven-fu to achieve this. However I wonder if the lib directory is the right place to put this? The bin/flume-ng script pulls in all the jars in lib/* for the agent classpath. People would need to know to delete this jar if they want to override certain other jar dependencies in their own deployments, just as one example of the confusion this could create. Worth noting that I want to do a similar thing for some load testing tools that I have had lying around (but I also want that to be an executable jar). Anyway I think this should go in but I feel like we should create a special place for these little buggers.
        Hide
        rvs Roman Shaposhnik added a comment -

        Mike Percy had exact same concern once I submitted the patch – I think you're absolutely right it needs to go into its own location. How about a subdirectory called client? Would that work?

        Also, if you want any other bits and piece of flume build to be hooked up to the similar magic – let me know – I'd be game implementing those.

        Show
        rvs Roman Shaposhnik added a comment - Mike Percy had exact same concern once I submitted the patch – I think you're absolutely right it needs to go into its own location. How about a subdirectory called client? Would that work? Also, if you want any other bits and piece of flume build to be hooked up to the similar magic – let me know – I'd be game implementing those.
        Hide
        hshreedharan Hari Shreedharan added a comment -

        Roman Shaposhnik, how about putting it into a directory called tools/bundles (or something similar). I am working on FLUME-1586 in which I plan to add an executable jar which does some integrity verification - we could have that go into the same directory as well.

        Show
        hshreedharan Hari Shreedharan added a comment - Roman Shaposhnik , how about putting it into a directory called tools/bundles (or something similar). I am working on FLUME-1586 in which I plan to add an executable jar which does some integrity verification - we could have that go into the same directory as well.
        Hide
        rvs Roman Shaposhnik added a comment -

        The attached patch puts the fat jar into /tools and also fixes the issues with moduleSets not working quite properly.

        Show
        rvs Roman Shaposhnik added a comment - The attached patch puts the fat jar into /tools and also fixes the issues with moduleSets not working quite properly.
        Hide
        hshreedharan Hari Shreedharan added a comment -

        +1. Looks good. Ran full build - all jars in expected directories.

        Show
        hshreedharan Hari Shreedharan added a comment - +1. Looks good. Ran full build - all jars in expected directories.
        Hide
        hshreedharan Hari Shreedharan added a comment -

        Patch committed, rev: 1e66428c6414af8c83f24c810bd770c292f0fb5a. Thanks Roman!

        Show
        hshreedharan Hari Shreedharan added a comment - Patch committed, rev: 1e66428c6414af8c83f24c810bd770c292f0fb5a. Thanks Roman!
        Hide
        hudson Hudson added a comment -

        Integrated in flume-trunk #416 (See https://builds.apache.org/job/flume-trunk/416/)
        FLUME-2008. Create a fat jar for flume-ng-log4jappender. (Revision 1e66428c6414af8c83f24c810bd770c292f0fb5a)

        Result = UNSTABLE
        hshreedharan : http://git-wip-us.apache.org/repos/asf/flume/repo?p=flume.git&a=commit&h=1e66428c6414af8c83f24c810bd770c292f0fb5a
        Files :

        • flume-ng-dist/src/main/assembly/bin.xml
        • flume-ng-dist/pom.xml
        • pom.xml
        • flume-ng-clients/flume-ng-log4jappender/pom.xml
        Show
        hudson Hudson added a comment - Integrated in flume-trunk #416 (See https://builds.apache.org/job/flume-trunk/416/ ) FLUME-2008 . Create a fat jar for flume-ng-log4jappender. (Revision 1e66428c6414af8c83f24c810bd770c292f0fb5a) Result = UNSTABLE hshreedharan : http://git-wip-us.apache.org/repos/asf/flume/repo?p=flume.git&a=commit&h=1e66428c6414af8c83f24c810bd770c292f0fb5a Files : flume-ng-dist/src/main/assembly/bin.xml flume-ng-dist/pom.xml pom.xml flume-ng-clients/flume-ng-log4jappender/pom.xml

          People

          • Assignee:
            rvs Roman Shaposhnik
            Reporter:
            rvs Roman Shaposhnik
          • Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development