You can create a JIRA here - https://issues.apache.org/jira/browse/KAFKA.
On Wed, Feb 26, 2014 at 9:33 PM, 김동경 <style9...@gmail.com> wrote: > Actually, I am quite newbie to this. > What do you exactly want me to do? > You want me to raise an issue for this? > Then which JIRA can I access and what I should do? > > > 2014-02-26 20:48 GMT+09:00 Neha Narkhede <neha.narkh...@gmail.com>: > > > I think this is a bug with the KafkaLog4jAppender that is triggered when > > the message send logs an error that in turn tries to resend the message > and > > gets into this infinite loop. Could you file a JIRA? > > > > > > On Tue, Feb 25, 2014 at 9:51 PM, 김동경 <style9...@gmail.com> wrote: > > > > > Dear all. > > > > > > Are there anyone who tried running Kafka-0.8 Log4j Appender? > > > I want to send my application log into Kafka via Log4j Appender. > > > > > > > > > Here is my log4j.properties. > > > I couldn`t find any proper encoder, so I just configure it to use > default > > > encoder. > > > (e.g I commented the line.) > > > > > > > > > > > > ---------------------------------------------------------------------------------------------------------- > > > log4j.rootLogger=INFO, stdout, KAFKA > > > > > > log4j.appender.stdout=org.apache.log4j.ConsoleAppender > > > log4j.appender.stdout.layout=org.apache.log4j.PatternLayout > > > log4j.appender.stdout.layout.ConversionPattern=%5p [%t] (%F:%L) - %m%n > > > > > > > > > log4j.appender.KAFKA=kafka.producer.KafkaLog4jAppender > > > log4j.appender.KAFKA.layout=org.apache.log4j.PatternLayout > > > log4j.appender.KAFKA.layout.ConversionPattern=%-5p: %c - %m%n > > > log4j.appender.KAFKA.BrokerList=hnode01:9092 > > > log4j.appender.KAFKA.Topic=DKTestEvent > > > > > > #log4j.appender.KAFKA.SerializerClass=kafka.log4j.AppenderStringEncoder > > > > > > > > > ---------------------------------------------------------------------------------------------------------- > > > > > > > > > And this is my sample application. > > > > > > > > > ---------------------------------------------------------------------------------------------------------- > > > import org.apache.log4j.Logger; > > > import org.apache.log4j.BasicConfigurator; > > > import org.apache.log4j.PropertyConfigurator; > > > > > > public class HelloWorld { > > > > > > static Logger logger = Logger.getLogger(HelloWorld.class.getName()); > > > > > > public static void main(String[] args) { > > > PropertyConfigurator.configure(args[0]); > > > > > > logger.info("Entering application."); > > > logger.debug("Debugging!."); > > > logger.info("Exiting application."); > > > } > > > } > > > > > > > > > ---------------------------------------------------------------------------------------------------------- > > > > > > Since my project is maven project, I attached pom.xml also. > > > > > > > > > > > > ---------------------------------------------------------------------------------------------------------- > > > <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi=" > > > http://www.w3.org/2001/XMLSchema-instance" > > > xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 > > > http://maven.apache.org/xsd/maven-4.0.0.xsd"> > > > <modelVersion>4.0.0</modelVersion> > > > <groupId>com.my.app</groupId> > > > <artifactId>log4-appender</artifactId> > > > <version>0.0.1-SNAPSHOT</version> > > > > > > <dependencies> > > > <dependency> > > > <groupId>org.apache.kafka</groupId> > > > <artifactId>kafka_2.8.2</artifactId> > > > <version>0.8.0</version> > > > </dependency> > > > > > > <dependency> > > > <groupId>log4j</groupId> > > > <artifactId>log4j</artifactId> > > > <version>1.2.17</version> > > > </dependency> > > > </dependencies> > > > > > > </project> > > > > > > > > > ---------------------------------------------------------------------------------------------------------- > > > > > > > > > And I am getting these error: > > > > > > > > > ----------------------------------------------------------------------------------------------------------- > > > INFO [main] (Logging.scala:67) - Verifying properties > > > INFO [main] (Logging.scala:67) - Property metadata.broker.list is > > > overridden to hnode01:9092 > > > INFO [main] (Logging.scala:67) - Property serializer.class is > overridden > > > to kafka.serializer.StringEncoder > > > INFO [main] (HelloWorld.java:14) - Entering application. > > > INFO [main] (HelloWorld.java:14) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 0 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (HelloWorld.java:14) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 1 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (HelloWorld.java:14) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 2 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (HelloWorld.java:14) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 3 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (HelloWorld.java:14) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 4 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (HelloWorld.java:14) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 5 for 1 topic(s) > > > Set(DKTestEvent) > > > . > > > . > > > . > > > INFO [main] (HelloWorld.java:14) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 60 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (HelloWorld.java:14) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 61 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (HelloWorld.java:14) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 62 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (Logging.scala:67) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 63 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (Logging.scala:67) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 64 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (Logging.scala:67) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 65 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (Logging.scala:67) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 66 for 1 topic(s) > > > Set(DKTestEvent) > > > INFO [main] (Logging.scala:67) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 67 for 1 topic(s) > > > Set(DKTestEvent) > > > . > > > . > > > . > > > INFO [main] (Logging.scala:67) - Fetching metadata from broker > > > id:0,host:hnode01,port:9092 with correlation id 534 for 1 topic(s) > > > Set(DKTestEvent) > > > ERROR [main] (Logging.scala:67) - > > > ERROR [main] (Logging.scala:67) - > > > ERROR [main] (Logging.scala:67) - > > > ERROR [main] (Logging.scala:67) - > > > ERROR [main] (Logging.scala:67) - > > > ERROR [main] (Logging.scala:67) - > > > java.lang.StackOverflowError > > > at java.lang.ClassLoader.defineClass1(Native Method) > > > at java.lang.ClassLoader.defineClass(ClassLoader.java:643) > > > at > > java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) > > > at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) > > > at java.net.URLClassLoader.access$000(URLClassLoader.java:73) > > > at java.net.URLClassLoader$1.run(URLClassLoader.java:212) > > > at java.security.AccessController.doPrivileged(Native Method) > > > at java.net.URLClassLoader.findClass(URLClassLoader.java:205) > > > at java.lang.ClassLoader.loadClass(ClassLoader.java:323) > > > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) > > > at java.lang.ClassLoader.loadClass(ClassLoader.java:268) > > > at java.lang.ClassLoader.defineClass1(Native Method) > > > at java.lang.ClassLoader.defineClass(ClassLoader.java:643) > > > at > > java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) > > > at java.net.URLClassLoader.defineClass(URLClassLoader.java:277) > > > at java.net.URLClassLoader.access$000(URLClassLoader.java:73) > > > at java.net.URLClassLoader$1.run(URLClassLoader.java:212) > > > at java.security.AccessController.doPrivileged(Native Method) > > > at java.net.URLClassLoader.findClass(URLClassLoader.java:205) > > > at java.lang.ClassLoader.loadClass(ClassLoader.java:323) > > > at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294) > > > at java.lang.ClassLoader.loadClass(ClassLoader.java:268) > > > at > > > > > > > > > org.apache.log4j.spi.ThrowableInformation.getThrowableStrRep(ThrowableInformation.java:87) > > > at > > > > > > org.apache.log4j.spi.LoggingEvent.getThrowableStrRep(LoggingEvent.java:413) > > > at org.apache.log4j.WriterAppender.subAppend(WriterAppender.java:313) > > > at org.apache.log4j.WriterAppender.append(WriterAppender.java:162) > > > at > org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251) > > > at > > > > > > > > > org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66) > > > at org.apache.log4j.Category.callAppenders(Category.java:206) > > > at org.apache.log4j.Category.forcedLog(Category.java:391) > > > at org.apache.log4j.Category.error(Category.java:322) > > > at kafka.utils.Logging$$anonfun$swallowError$1.apply(Logging.scala:105) > > > at kafka.utils.Logging$$anonfun$swallowError$1.apply(Logging.scala:105) > > > at kafka.utils.Utils$.swallow(Utils.scala:189) > > > at kafka.utils.Logging$class.swallowError(Logging.scala:105) > > > at kafka.utils.Utils$.swallowError(Utils.scala:46) > > > at > > > > > > > > > kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:67) > > > at kafka.producer.Producer.send(Producer.scala:76) > > > at > kafka.producer.KafkaLog4jAppender.append(KafkaLog4jAppender.scala:96) > > > at > org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251) > > > at > > > > > > > > > org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66) > > > at org.apache.log4j.Category.callAppenders(Category.java:206) > > > at org.apache.log4j.Category.forcedLog(Category.java:391) > > > at org.apache.log4j.Category.info < > > http://org.apache.log4j.category.info/> > > > (Category.java:666) > > > at kafka.utils.Logging$class.info(Logging.scala:67) > > > at kafka.client.ClientUtils$.info(ClientUtils.scala:31) > > > at kafka.client.ClientUtils$.fetchTopicMetadata(ClientUtils.scala:51) > > > at > > > > > > kafka.producer.BrokerPartitionInfo.updateInfo(BrokerPartitionInfo.scala:82) > > > at > > > > > > > > > kafka.producer.async.DefaultEventHandler$$anonfun$handle$1.apply$mcV$sp(DefaultEventHandler.scala:67) > > > at kafka.utils.Utils$.swallow(Utils.scala:187) > > > at kafka.utils.Logging$class.swallowError(Logging.scala:105) > > > at kafka.utils.Utils$.swallowError(Utils.scala:46) > > > at > > > > > > > > > kafka.producer.async.DefaultEventHandler.handle(DefaultEventHandler.scala:67) > > > at kafka.producer.Producer.send(Producer.scala:76) > > > at > kafka.producer.KafkaLog4jAppender.append(KafkaLog4jAppender.scala:96) > > > at > org.apache.log4j.AppenderSkeleton.doAppend(AppenderSkeleton.java:251) > > > at > > > > > > > > > org.apache.log4j.helpers.AppenderAttachableImpl.appendLoopOnAppenders(AppenderAttachableImpl.java:66) > > > . > > > . > > > . > > > > > > > > > ------------------------------------------------------------------------------------------------------------------------------------------ > > > > > > I am getting above error continuously if i don`t terminate the program. > > > > > > If I miss something, kindly let me know. > > > > > > Thanks > > > Regards > > > Dongkyoung. > > > > > >