It might be nice to make an updated plugin cache format that can be cat'd
together instead of deserializing and serializing again.

On 11 May 2016 at 06:08, Ralph Goers <ralph.go...@dslextreme.com> wrote:

> Oops. I think I misread your comment. You want to use the Transformer as
> part of the maven build, not at runtime.
>
> Ralph
>
> > On May 11, 2016, at 3:48 AM, Julian Keppel <juliankeppel1...@gmail.com>
> wrote:
> >
> > Thanks.
> >
> > So this seems to be a general problem with log4j and the provided
> plugins?
> > But what is the right way to use log4j plugins with a maven project which
> > should be shipped as a complete package (JAR)? I mean, everytime you need
> > to use a log4j plugin, you also have at least the log4j core dependency
> in
> > you classpath. Do I really need to use a Transformer or something like
> that?
> >
> > 2016-05-05 2:00 GMT+02:00 Ralph Goers <ralph.go...@dslextreme.com>:
> >
> >> You are most likely having this problem because when you create your
> uber
> >> jar you can only include one of the Log4j2Plugins.dat files. Both the
> >> log4j2-core jar and the log4j2-flume jar are going to have one.  This
> has
> >> been discussed in https://issues.apache.org/jira/browse/LOG4J2-1059 <
> >> https://issues.apache.org/jira/browse/LOG4J2-1059> (which probably can
> be
> >> closed), https://issues.apache.org/jira/browse/LOG4J2-369 <
> >> https://issues.apache.org/jira/browse/LOG4J2-369>, and
> >> https://issues.apache.org/jira/browse/LOG4J2-673 <
> >> https://issues.apache.org/jira/browse/LOG4J2-673>.  This last one has a
> >> solution in the middle of the discussion by way of a Transformer that
> can
> >> be used in the maven shade plugin. However, you are using the assembly
> >> plugin, so I am not really sure how you can do it that way.
> >>
> >> Ralph
> >>
> >>
> >>
> >>
> >>>> On May 4, 2016, at 12:43 PM, Julian Keppel <
> juliankeppel1...@gmail.com>
> >>> wrote:
> >>>
> >>> Hi everyone,
> >>>
> >>> I tested the flume appender for log4j2. My configuration XML looks like
> >>> this:
> >>>
> >>> <Configuration status="ERROR" name="some_name">
> >>>
> >>>   ...
> >>>
> >>>   <Appenders>
> >>>
> >>>        ...
> >>>
> >>>       <Flume name="FLUME" compress="true">
> >>>       <Agent host="${FLUME_HOST}" port="${FLUME_PORT}"/>
> >>>       <PatternLayout pattern="${LOG_PATTERN}"/>
> >>>       <ThresholdFilter level="INFO" onMatch="ACCEPT"
> onMismatch="DENY"/>
> >>>       </Flume>
> >>>   </Appenders>
> >>>
> >>>   <Loggers>
> >>>       <Root level="DEBUG">
> >>>               <AppenderRef ref="FLUME"/>
> >>>           ...
> >>>       </Root>
> >>>   </Loggers>
> >>> </Configuration>
> >>>
> >>> And I build my application with maven assembly plugin to get an uber
> jar
> >>> which contains all dependencies (I want to ship a single jar file to
> all
> >>> the destination runtime environments).
> >>>
> >>> When I start the application I get the following error:
> >>> ERROR Error processing element Flume ([Appenders: null]):
> CLASS_NOT_FOUND
> >>>
> >>> So it looks like there is some dependency missing. But in the official
> >> doc
> >>> I read that for remote mode of the flume appender I only need the
> >> following
> >>> dependency (including the necessary log4j dependencies):
> >>>
> >>> <dependencies>
> >>>
> >>>               ...
> >>>
> >>> <dependency>
> >>> <groupId>org.apache.logging.log4j</groupId>
> >>> <artifactId>log4j-core</artifactId>
> >>> <version>2.5</version>
> >>> </dependency>
> >>> <dependency>
> >>> <groupId>org.apache.logging.log4j</groupId>
> >>> <artifactId>log4j-api</artifactId>
> >>> <version>2.5</version>
> >>> </dependency>
> >>> <dependency>
> >>> <groupId>org.apache.logging.log4j</groupId>
> >>> <artifactId>*log4j-flume-ng*</artifactId>
> >>> <version>2.5</version>
> >>> </dependency>
> >>> </dependencies>
> >>>
> >>> Another hint: When I start the application from eclipse, it seems to
> work
> >>> totally fine (at least I don't get the error from above).
> >>>
> >>> So what I am doing wrong here? Has anyone some advice for me? Thanks in
> >>> advance.
> >>>
> >>> Julian
> >>
> >>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org
> For additional commands, e-mail: log4j-user-h...@logging.apache.org
>
>


-- 
Matt Sicker <boa...@gmail.com>

Reply via email to