This doesn't look like it has anything to do with the Flume Appender. Can you attach the jar, configuration and instructions and the source to a new Jira issue?
Thanks. Ralph On Nov 14, 2012, at 2:54 AM, Simon Monecke wrote: > Hi Ralph, > > thank you for your response, but now i have another problem. > > i have these dependencies: > <dependency> > <groupId>org.apache.logging.log4j</groupId> > <artifactId>log4j-api</artifactId> > <version>2.0-beta2</version> > </dependency> > <dependency> > <groupId>org.apache.logging.log4j</groupId> > <artifactId>log4j-core</artifactId> > <version>2.0-beta2</version> > </dependency> > <dependency> > <groupId>org.apache.logging.log4j</groupId> > <artifactId>log4j-flume-ng</artifactId> > <version>2.0-alpha2</version> > <exclusions> > <exclusion> > <artifactId>slf4j-impl</artifactId> > <groupId>org.apache.logging.log4j</groupId> > </exclusion> > </exclusions> > </dependency> > <dependency> > <groupId>org.apache.logging.log4j.adapters</groupId> > <artifactId>slf4j-impl</artifactId> > <version>2.0-beta2</version> > </dependency> > <dependency> > <groupId>org.apache.logging.log4j.adapters</groupId> > <artifactId>log4j12-api</artifactId> > <version>2.0-beta2</version> > </dependency> > <dependency> > <groupId>org.apache.flume</groupId> > <artifactId>flume-ng-core</artifactId> > <version>${flumeVersion}</version> > <exclusions> > <exclusion> > <groupId>org.slf4j</groupId> > <artifactId>slf4j-log4j12</artifactId> > </exclusion> > <exclusion> > <groupId>log4j</groupId> > <artifactId>log4j</artifactId> > </exclusion> > </exclusions> > </dependency> > <dependency> > <groupId>org.apache.flume</groupId> > <artifactId>flume-ng-node</artifactId> > <version>${flumeVersion}</version> > <exclusions> > <exclusion> > <groupId>org.slf4j</groupId> > <artifactId>slf4j-log4j12</artifactId> > </exclusion> > <exclusion> > <groupId>log4j</groupId> > <artifactId>log4j</artifactId> > </exclusion> > </exclusions> > </dependency> > <dependency> > <groupId>org.apache.flume.flume-ng-channels</groupId> > <artifactId>flume-file-channel</artifactId> > <version>${flumeVersion}</version> > </dependency> > <dependency> > <groupId>org.apache.hadoop</groupId> > <artifactId>hadoop-core</artifactId> > <version>1.0.1</version> > </dependency> > <dependency> > <groupId>junit</groupId> > <artifactId>junit</artifactId> > <version>4.10</version> > </dependency> > > In Eclipse i can run a little test: > Logger logger = LogManager.getLogger(Log4j2FlumeEmbedded.class); > > String text = "Test"; > long timeOfFirstLog = System.nanoTime(); > for (int i = 0; i < countOfLogs; i++) { > logger.error(text); > } > > So i get no errors, but i see nothing. I use "export as runnable jar" to > pack all dependencies in one jar. Then i copy it to my virtualbox (linux), > start a flume-agent and get a error: > > "Exception in thread "main" java.lang.NullPointerException > at > org.apache.logging.log4j.core.config.plugins.PluginManager.collectPlugins(PluginManager.java:154) > at > org.apache.logging.log4j.core.config.plugins.PluginManager.collectPlugins(PluginManager.java:125) > at > org.apache.logging.log4j.core.pattern.PatternParser.<init>(PatternParser.java:107) > at > org.apache.logging.log4j.core.layout.PatternLayout.createPatternParser(PatternLayout.java:156) > at > org.apache.logging.log4j.core.layout.PatternLayout.<init>(PatternLayout.java:109) > at > org.apache.logging.log4j.core.layout.PatternLayout.createLayout(PatternLayout.java:193) > at > org.apache.logging.log4j.core.config.DefaultConfiguration.<init>(DefaultConfiguration.java:48) > at > org.apache.logging.log4j.core.LoggerContext.<init>(LoggerContext.java:49) > at > org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.locateContext(ClassLoaderContextSelector.java:161) > at > org.apache.logging.log4j.core.selector.ClassLoaderContextSelector.getContext(ClassLoaderContextSelector.java:104) > at > org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:73) > at > org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:30) > at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:138) > at de.simo.Log4j2FlumeEmbedded.main(Log4j2FlumeEmbedded.java:22) > " > > Can anybody create a very small project (just 1 message with a embedded > agent) to show me what i have to do? :/ > To use other appender is very easy, but the flume appender... > thank you > > > > 2012/11/13 Ralph Goers <ralph.go...@dslextreme.com> > >> It looks like you are missing the dependency for avro. I haven't done the >> best job at listing the exact dependencies needed for both the Remote and >> embedded appenders. I will try to add that to the wiki but I won't be able >> to get to it until tonight at the earliest. >> >> Ralph >> >> On Nov 13, 2012, at 7:32 AM, Simon Monecke wrote: >> >>> Hi, >>> >>> i want to use the flume-appender, but it doesn't work. >>> >>> my config: >>> " >>> <?xml version="1.0" encoding="UTF-8"?> >>> <configuration status="warn" verbose="true"> >>> <appenders> >>> <Flume name="eventLogger" suppressExceptions="false" compress="true"> >>> <Agent host="localhost" port="44444"/> >>> <PatternLayout pattern="%m%n"/> >>> </Flume> >>> </appenders> >>> <loggers> >>> <root level="error"> >>> <appender-ref ref="eventLogger"/> >>> </root> >>> </loggers> >>> </configuration> >>> " >>> >>> my pom: >>> " >>> ... >>> <dependencies> >>> <dependency> >>> <groupId>org.apache.logging.log4j</groupId> >>> <artifactId>log4j-api</artifactId> >>> <version>2.0-beta2</version> >>> </dependency> >>> <dependency> >>> <groupId>org.apache.logging.log4j</groupId> >>> <artifactId>log4j-core</artifactId> >>> <version>2.0-beta2</version> >>> </dependency> >>> <dependency> >>> <groupId>org.apache.logging.log4j</groupId> >>> <artifactId>log4j-flume-ng</artifactId> >>> <version>2.0-alpha2</version> >>> </dependency> >>> </dependencies> >>> ... >>> " >>> my Log4j2FlumeEmbedded.java: >>> " >>> ... >>> Logger logger = LogManager.getLogger(Log4j2FlumeEmbedded.class); >>> >>> String text = "Test"; >>> long timeOfFirstLog = System.nanoTime(); >>> for (int i = 0; i < countOfLogs; i++) { >>> logger.error(text); >>> ... >>> " >>> >>> i try >>> "java -cp >>> >> ./log4j2flumeembedded-0.0.1-SNAPSHOT.jar:./lib/log4j-api-2.0-beta2.jar:./lib/log4j-core-2.0-beta2.jar:./lib/log4j-flume-ng-2.0-beta2.jar:./apache-flume-1.2.0/lib/flume-ng-sdk-1.2.0.jar >>> de.simo.Log4j2FlumeEmbedded 10" >>> >>> and i got many errors: >>> " >>> 2012-11-13 16:17:08,270 ERROR Unable to invoke method createAppender in >>> class org.apache.logging.log4j.flume.appender.FlumeAppender for element >>> Flume java.lang.reflect.InvocationTargetException >>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>> at >>> >> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) >>> at >>> >> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:616) >>> at >>> >> org.apache.logging.log4j.core.config.BaseConfiguration.createPluginObject(BaseConfiguration.java:686) >>> at >>> >> org.apache.logging.log4j.core.config.BaseConfiguration.createConfiguration(BaseConfiguration.java:454) >>> at >>> >> org.apache.logging.log4j.core.config.BaseConfiguration.createConfiguration(BaseConfiguration.java:446) >>> at >>> >> org.apache.logging.log4j.core.config.BaseConfiguration.doConfigure(BaseConfiguration.java:152) >>> at >>> >> org.apache.logging.log4j.core.config.BaseConfiguration.start(BaseConfiguration.java:110) >>> at >>> >> org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:251) >>> at >>> >> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:267) >>> at >>> org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:134) >>> at >>> >> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:75) >>> at >>> >> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:30) >>> at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:138) >>> at de.simo.Log4j2FlumeEmbedded.main(Log4j2FlumeEmbedded.java:19) >>> Caused by: java.lang.NoClassDefFoundError: >>> org/apache/avro/AvroRemoteException >>> at >>> >> org.apache.logging.log4j.flume.appender.FlumeAppender.createAppender(FlumeAppender.java:173) >>> ... 16 more >>> Caused by: java.lang.ClassNotFoundException: >>> org.apache.avro.AvroRemoteException >>> at java.net.URLClassLoader$1.run(URLClassLoader.java:217) >>> at java.security.AccessController.doPrivileged(Native Method) >>> at java.net.URLClassLoader.findClass(URLClassLoader.java:205) >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:321) >>> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) >>> at java.lang.ClassLoader.loadClass(ClassLoader.java:266) >>> ... 17 more >>> >>> Null object returned for Flume >>> Exception in thread "main" java.lang.NullPointerException >>> at >>> >> org.apache.logging.log4j.core.config.BaseConfiguration.createPluginObject(BaseConfiguration.java:591) >>> at >>> >> org.apache.logging.log4j.core.config.BaseConfiguration.createConfiguration(BaseConfiguration.java:454) >>> at >>> >> org.apache.logging.log4j.core.config.BaseConfiguration.doConfigure(BaseConfiguration.java:152) >>> at >>> >> org.apache.logging.log4j.core.config.BaseConfiguration.start(BaseConfiguration.java:110) >>> at >>> >> org.apache.logging.log4j.core.LoggerContext.setConfiguration(LoggerContext.java:251) >>> at >>> >> org.apache.logging.log4j.core.LoggerContext.reconfigure(LoggerContext.java:267) >>> at >>> org.apache.logging.log4j.core.LoggerContext.start(LoggerContext.java:134) >>> at >>> >> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:75) >>> at >>> >> org.apache.logging.log4j.core.impl.Log4jContextFactory.getContext(Log4jContextFactory.java:30) >>> at org.apache.logging.log4j.LogManager.getLogger(LogManager.java:138) >>> at de.simo.Log4j2FlumeEmbedded.main(Log4j2FlumeEmbedded.java:19) >>> " >>> >>> What can i do? :/ The user guide is a little bit to short. >>> >>> Regards, >>> Simon >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org >> For additional commands, e-mail: log4j-user-h...@logging.apache.org >> >> --------------------------------------------------------------------- To unsubscribe, e-mail: log4j-user-unsubscr...@logging.apache.org For additional commands, e-mail: log4j-user-h...@logging.apache.org