Home | About | Sematext search-lucene.com search-hadoop.com
 Search Hadoop and all its subprojects:

Switch to Threaded View
Flume, mail # user - Could not instantiate class org.apache.flume.clients.log4jappender


Copy link to this message
-
Re: Could not instantiate class org.apache.flume.clients.log4jappender
Connor Woodson 2013-01-14, 07:10
He's running Pig, not Flume, but trying to get the Flume Log4jAppender
working.

If you want to try to compile with the log4jappender, download Pig from
Github and add the following to ivy.xml, then 'ant build':

<dependency org="org.apache.flume" name="flume-ng-clients" rev="1.3.1"/>

On Sun, Jan 13, 2013 at 10:58 PM, Alexander Alten-Lorenz <
[EMAIL PROTECTED]> wrote:

> Please post the flume startup line. I guess you have missed the --conf
> switch.
>
> - Alex
>
> On Jan 14, 2013, at 4:25 AM, 孙东亮 <[EMAIL PROTECTED]> wrote:
>
> > I'm a newbie for the Flume, and I just set up flume for a test.
> > I want to use the log4jappender to get log info from PIG scripts, the
> > log4j.properties is:
> >
> > log4j.appender.flume > org.apache.flume.clients.log4jappender.Log4jAppender
> > log4j.appender.flume.Hostname = localhost
> > log4j.appender.flume.Port = 41414
> > log4j.logger.org.apache.pig=DEBUG,flume
> >
> > And for the flume.config:
> >
> > a1.sources = r1
> > a1.sinks = k1
> > a1.channels = c1
> >
> > # Describe/configure the source
> > a1.sources.r1.type = avro
> > a1.sources.r1.bind = localhost
> > a1.sources.r1.port = 41414
> >
> > # Describe the sink
> > a1.sinks.k1.type = logger
> > # Use a channel which buffers events in memory
> > a1.channels.c1.type = memory
> > a1.channels.c1.capacity = 1000
> > a1.channels.c1.transactionCapacity = 100
> >
> > # Bind the source and sink to the channel
> > a1.sources.r1.channels = c1
> > a1.sinks.k1.channel = c1
> >
> > But I got the following error when run a pig script:
> > java.lang.ClassNotFoundException:
> > org.apache.flume.clients.log4jappender.Log4jAppender
> > at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
> > at java.security.AccessController.doPrivileged(Native Method)
> > at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
> > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
> > at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
> > at java.lang.Class.forName0(Native Method)
> > at java.lang.Class.forName(Class.java:169)
> > at org.apache.log4j.helpers.Loader.loadClass(Loader.java:179)
> > at
> >
> org.apache.log4j.helpers.OptionConverter.instantiateByClassName(OptionConverter.java:320)
> > at
> >
> org.apache.log4j.helpers.OptionConverter.instantiateByKey(OptionConverter.java:121)
> > at
> >
> org.apache.log4j.PropertyConfigurator.parseAppender(PropertyConfigurator.java:664)
> > at
> >
> org.apache.log4j.PropertyConfigurator.parseCategory(PropertyConfigurator.java:647)
> > at
> >
> org.apache.log4j.PropertyConfigurator.parseCatsAndRenderers(PropertyConfigurator.java:568)
> > at
> >
> org.apache.log4j.PropertyConfigurator.doConfigure(PropertyConfigurator.java:442)
> > at
> >
> org.apache.log4j.PropertyConfigurator.configure(PropertyConfigurator.java:367)
> > at org.apache.pig.Main.configureLog4J(Main.java:678)
> > at org.apache.pig.Main.run(Main.java:337)
> > at org.apache.pig.Main.main(Main.java:111)
> > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> > at
> >
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> > at
> >
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> > at java.lang.reflect.Method.invoke(Method.java:597)
> > at org.apache.hadoop.util.RunJar.main(RunJar.java:156)
> > log4j:ERROR Could not instantiate appender named "flume".
> >
> > Could you please help me find what I miss or where is incorrect for the
> > configuration.
> >
> > Thanks a lot!
> > Dongliang
>
> --
> Alexander Alten-Lorenz
> http://mapredit.blogspot.com
> German Hadoop LinkedIn Group: http://goo.gl/N8pCF
>
>