I'll give it a try.  I am planning on upgrading to Flume 1.3.1 and making it so 
the Appender won't fail to start if it can't establish a connection. I may also 
convert it to use Flume's built in support for multiple agents.


Ralph

On Jan 10, 2013, at 12:28 PM, Gary Gregory wrote:

> Since we just talked about compiling with Java 7...
> 
> I see test failures on Java 7 on Win 7:
> 
> -------------------------------------------------------
>  T E S T S
> -------------------------------------------------------
> Running org.apache.logging.log4j.flume.appender.FlumeAppenderTest
> Tests run: 6, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 8.535 sec
> Running org.apache.logging.log4j.flume.appender.FlumeEmbeddedAgentTest
> 2013-01-10 15:07:13,630 [WARN] org.apache.flume.sink.FailoverSinkProcessor 
> Sink agent0 failed and has been sent to failover list
> org.apache.flume.EventDeliveryException: Failed to send events
>         at org.apache.flume.sink.AvroSink.process(AvroSink.java:325) 
> ~[flume-ng-core-1.2.0.jar:1.2.0]
>         at 
> org.apache.flume.sink.FailoverSinkProcessor.process(FailoverSinkProcessor.java:182)
>  [flume-ng-core-1.2.0.jar:1.2.0]
>         at org.apache.flume.SinkRunner$PollingRunner.run(SinkRunner.java:147) 
> [flume-ng-core-1.2.0.jar:1.2.0]
>         at java.lang.Thread.run(Thread.java:722) [?:1.7.0_10]
> Caused by: org.apache.flume.EventDeliveryException: NettyAvroRpcClient { 
> host: localhost, port: 12345 }: Failed to send batch
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:236)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at org.apache.flume.sink.AvroSink.process(AvroSink.java:309) 
> ~[flume-ng-core-1.2.0.jar:1.2.0]
>         ... 3 more
> Caused by: org.apache.flume.EventDeliveryException: NettyAvroRpcClient { 
> host: localhost, port: 12345 }: RPC request exception
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:286)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:224)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at org.apache.flume.sink.AvroSink.process(AvroSink.java:309) 
> ~[flume-ng-core-1.2.0.jar:1.2.0]
>         ... 3 more
> Caused by: java.util.concurrent.ExecutionException: java.io.IOException: 
> Error connecting to localhost/127.0.0.1:12345
>         at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:262) 
> ~[?:1.7.0_10]
>         at java.util.concurrent.FutureTask.get(FutureTask.java:119) 
> ~[?:1.7.0_10]
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:278)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:224)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at org.apache.flume.sink.AvroSink.process(AvroSink.java:309) 
> ~[flume-ng-core-1.2.0.jar:1.2.0]
>         ... 3 more
> Caused by: java.io.IOException: Error connecting to localhost/127.0.0.1:12345
>         at 
> org.apache.avro.ipc.NettyTransceiver.getChannel(NettyTransceiver.java:249) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at 
> org.apache.avro.ipc.NettyTransceiver.getRemoteName(NettyTransceiver.java:364) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor.writeHandshake(Requestor.java:202) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor.access$300(Requestor.java:52) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor$Request.getBytes(Requestor.java:478) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor.request(Requestor.java:147) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor.request(Requestor.java:129) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at 
> org.apache.avro.ipc.specific.SpecificRequestor.invoke(SpecificRequestor.java:68)
>  ~[avro-ipc-1.6.3.jar:1.6.3]
>         at $Proxy17.appendBatch(Unknown Source) ~[?:?]
>         at 
> org.apache.flume.api.NettyAvroRpcClient$2.call(NettyAvroRpcClient.java:269) 
> ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at 
> org.apache.flume.api.NettyAvroRpcClient$2.call(NettyAvroRpcClient.java:265) 
> ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 
> ~[?:1.7.0_10]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:166) 
> ~[?:1.7.0_10]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>  ~[?:1.7.0_10]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>  ~[?:1.7.0_10]
>         ... 1 more
> Caused by: java.net.ConnectException: Connection refused: no further 
> information
>         at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) 
> ~[?:1.7.0_10]
>         at 
> sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:692) 
> ~[?:1.7.0_10]
>         at 
> org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink$Boss.connect(NioClientSocketPipelineSink.java:401)
>  ~[netty-3.2.7.Final.jar:?]
>         at 
> org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink$Boss.processSelectedKeys(NioClientSocketPipelineSink.java:370)
>  ~[netty-3.2.7.Final.jar:?]
>         at 
> org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink$Boss.run(NioClientSocketPipelineSink.java:292)
>  ~[netty-3.2.7.Final.jar:?]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>  ~[?:1.7.0_10]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>  ~[?:1.7.0_10]
>         ... 1 more
> 15:07:16.400 [SinkRunner-PollingRunner-FailoverSinkProcessor] ERROR 
> org.apache.flume.SinkRunner - Unable to deliver event. Exception follows.
> org.apache.flume.EventDeliveryException: All sinks failed to process, nothing 
> left to failover to
>         at 
> org.apache.flume.sink.FailoverSinkProcessor.process(FailoverSinkProcessor.java:191)
>  ~[flume-ng-core-1.2.0.jar:1.2.0]
>         at org.apache.flume.SinkRunner$PollingRunner.run(SinkRunner.java:147) 
> [flume-ng-core-1.2.0.jar:1.2.0]
>         at java.lang.Thread.run(Thread.java:722) [?:1.7.0_10]
> Tests run: 3, Failures: 1, Errors: 0, Skipped: 0, Time elapsed: 14.456 sec 
> <<< FAILURE!
> testLog4Event(org.apache.logging.log4j.flume.appender.FlumeEmbeddedAgentTest) 
>  Time elapsed: 4.88 sec  <<< FAILURE!
> java.lang.AssertionError:
>         at org.junit.Assert.fail(Assert.java:91)
>         at org.junit.Assert.assertTrue(Assert.java:43)
>         at org.junit.Assert.assertNotNull(Assert.java:524)
>         at org.junit.Assert.assertNotNull(Assert.java:535)
>         at 
> org.apache.logging.log4j.flume.appender.FlumeEmbeddedAgentTest.testLog4Event(FlumeEmbeddedAgentTest.java:176)
>         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:601)
>         at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44)
>         at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15)
>         at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
>         at 
> org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
>         at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>         at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>         at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:76)
>         at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
>         at org.junit.runners.ParentRunner$3.run(ParentRunner.java:193)
>         at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:52)
>         at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:191)
>         at org.junit.runners.ParentRunner.access$000(ParentRunner.java:42)
>         at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:184)
>         at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:28)
>         at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:31)
>         at org.junit.runners.ParentRunner.run(ParentRunner.java:236)
>         at 
> org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:252)
>         at 
> org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:141)
>         at 
> org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:112)
>         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:601)
>         at 
> org.apache.maven.surefire.util.ReflectionUtils.invokeMethodWithArray(ReflectionUtils.java:189)
>         at 
> org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:165)
>         at 
> org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:85)
>         at 
> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:115)
>         at 
> org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:75)
> 
> Running org.apache.logging.log4j.flume.appender.FlumeEmbeddedAppenderTest
> 2013-01-10 15:07:31,530 [WARN] org.apache.flume.sink.FailoverSinkProcessor 
> Sink agent1 failed and has been sent to failover list
> org.apache.flume.EventDeliveryException: Failed to send events
>         at org.apache.flume.sink.AvroSink.process(AvroSink.java:325) 
> ~[flume-ng-core-1.2.0.jar:1.2.0]
>         at 
> org.apache.flume.sink.FailoverSinkProcessor.process(FailoverSinkProcessor.java:182)
>  [flume-ng-core-1.2.0.jar:1.2.0]
>         at org.apache.flume.SinkRunner$PollingRunner.run(SinkRunner.java:147) 
> [flume-ng-core-1.2.0.jar:1.2.0]
>         at java.lang.Thread.run(Thread.java:722) [?:1.7.0_10]
> Caused by: org.apache.flume.EventDeliveryException: NettyAvroRpcClient { 
> host: localhost, port: 12345 }: Failed to send batch
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:236)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at org.apache.flume.sink.AvroSink.process(AvroSink.java:309) 
> ~[flume-ng-core-1.2.0.jar:1.2.0]
>         ... 3 more
> Caused by: org.apache.flume.EventDeliveryException: NettyAvroRpcClient { 
> host: localhost, port: 12345 }: RPC request exception
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:286)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:224)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at org.apache.flume.sink.AvroSink.process(AvroSink.java:309) 
> ~[flume-ng-core-1.2.0.jar:1.2.0]
>         ... 3 more
> Caused by: java.util.concurrent.ExecutionException: java.io.IOException: 
> Error connecting to localhost/127.0.0.1:12345
>         at java.util.concurrent.FutureTask$Sync.innerGet(FutureTask.java:262) 
> ~[?:1.7.0_10]
>         at java.util.concurrent.FutureTask.get(FutureTask.java:119) 
> ~[?:1.7.0_10]
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:278)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at 
> org.apache.flume.api.NettyAvroRpcClient.appendBatch(NettyAvroRpcClient.java:224)
>  ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at org.apache.flume.sink.AvroSink.process(AvroSink.java:309) 
> ~[flume-ng-core-1.2.0.jar:1.2.0]
>         ... 3 more
> Caused by: java.io.IOException: Error connecting to localhost/127.0.0.1:12345
>         at 
> org.apache.avro.ipc.NettyTransceiver.getChannel(NettyTransceiver.java:249) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at 
> org.apache.avro.ipc.NettyTransceiver.getRemoteName(NettyTransceiver.java:364) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor.writeHandshake(Requestor.java:202) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor.access$300(Requestor.java:52) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor$Request.getBytes(Requestor.java:478) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor.request(Requestor.java:147) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at org.apache.avro.ipc.Requestor.request(Requestor.java:129) 
> ~[avro-ipc-1.6.3.jar:1.6.3]
>         at 
> org.apache.avro.ipc.specific.SpecificRequestor.invoke(SpecificRequestor.java:68)
>  ~[avro-ipc-1.6.3.jar:1.6.3]
>         at $Proxy18.appendBatch(Unknown Source) ~[?:?]
>         at 
> org.apache.flume.api.NettyAvroRpcClient$2.call(NettyAvroRpcClient.java:269) 
> ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at 
> org.apache.flume.api.NettyAvroRpcClient$2.call(NettyAvroRpcClient.java:265) 
> ~[flume-ng-sdk-1.2.0.jar:1.2.0]
>         at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:334) 
> ~[?:1.7.0_10]
>         at java.util.concurrent.FutureTask.run(FutureTask.java:166) 
> ~[?:1.7.0_10]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>  ~[?:1.7.0_10]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>  ~[?:1.7.0_10]
>         ... 1 more
> Caused by: java.net.ConnectException: Connection refused: no further 
> information
>         at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) 
> ~[?:1.7.0_10]
>         at 
> sun.nio.ch.SocketChannelImpl.finishConnect(SocketChannelImpl.java:692) 
> ~[?:1.7.0_10]
>         at 
> org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink$Boss.connect(NioClientSocketPipelineSink.java:401)
>  ~[netty-3.2.7.Final.jar:?]
>         at 
> org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink$Boss.processSelectedKeys(NioClientSocketPipelineSink.java:370)
>  ~[netty-3.2.7.Final.jar:?]
>         at 
> org.jboss.netty.channel.socket.nio.NioClientSocketPipelineSink$Boss.run(NioClientSocketPipelineSink.java:292)
>  ~[netty-3.2.7.Final.jar:?]
>         at 
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
>  ~[?:1.7.0_10]
>         at 
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
>  ~[?:1.7.0_10]
>         ... 1 more
> Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 12.43 sec
> 
> Results :
> 
> Failed tests:   
> testLog4Event(org.apache.logging.log4j.flume.appender.FlumeEmbeddedAgentTest)
> 
> Tests run: 12, Failures: 1, Errors: 0, Skipped: 0
> 
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] Reactor Summary:
> [INFO]
> [INFO] Apache Log4j 2 .................................... SUCCESS [1.420s]
> [INFO] Apache Log4j API .................................. SUCCESS [9.272s]
> [INFO] Apache Log4J Core ................................. SUCCESS [1:44.074s]
> [INFO] Apache Log4j 1.x Compatibility API ................ SUCCESS [3.789s]
> [INFO] Apache Log4j SLF4J Binding ........................ SUCCESS [2.685s]
> [INFO] Apache Log4j to SLF4J Adapter ..................... SUCCESS [1.845s]
> [INFO] Apache Log4j Commons Logging Bridge ............... SUCCESS [3.240s]
> [INFO] Apache Log4j Flume NG Bridge ...................... FAILURE [41.842s]
> [INFO] Log4j Web Adapters ................................ SKIPPED
> [INFO] log4j-samples ..................................... SKIPPED
> [INFO] flume-common ...................................... SKIPPED
> [INFO] flume-remote ...................................... SKIPPED
> [INFO] flume-embedded .................................... SKIPPED
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] BUILD FAILURE
> [INFO] 
> ------------------------------------------------------------------------
> [INFO] Total time: 2:49.127s
> [INFO] Finished at: Thu Jan 10 15:07:33 EST 2013
> [INFO] Final Memory: 70M/348M
> [INFO] 
> ------------------------------------------------------------------------
> 
> Tested with:
> 
> Apache Maven 3.0.4 (r1232337; 2012-01-17 03:44:56-0500)
> Maven home: C:\Java\apache-maven-3.0.4\bin\..
> Java version: 1.7.0_10, vendor: Oracle Corporation
> Java home: C:\Program Files\Java\jdk1.7.0_10\jre
> Default locale: en_US, platform encoding: Cp1252
> OS name: "windows 7", version: "6.1", arch: "amd64", family: "windows"
> 
> Gary
> 
> 
> 
> 
> 
> -- 
> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org 
> JUnit in Action, 2nd Ed: http://bit.ly/ECvg0
> Spring Batch in Action: http://bit.ly/bqpbCK
> Blog: http://garygregory.wordpress.com 
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory

Reply via email to