Alex, The flume startup no problem, flume-ng agent --conf ./conf/ --conf-file ./conf/flume.conf --name agent1 -Dflume.root.logger=DEBUG,console
I have test the following client, bin/flume-ng avro-client -H localhost -p 41414 -F ~/test.txt It's OK, but if I can not make it work if I use the log4jappender as the client. Thanks, Dongliang 2013/1/14 Alexander Alten-Lorenz <[email protected]> > 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 > >
