Ori Popowski created FLINK-16003:
------------------------------------

             Summary: ShardConsumer errors cannot be logged
                 Key: FLINK-16003
                 URL: https://issues.apache.org/jira/browse/FLINK-16003
             Project: Flink
          Issue Type: Bug
          Components: Connectors / Kinesis
    Affects Versions: 1.6.3
            Reporter: Ori Popowski


Some of the errors in the Kinesis connector show on Flink UI, but are not 
logged. This causes a serious problem since we cannot see them in our logging 
aggregation platform, and we cannot create alerts on them. One of the errors is 
the following:

 
{code:java}
java.lang.RuntimeException: Rate Exceeded for getRecords operation - all 3 
retry attempts returned ProvisionedThroughputExceededException.
 at 
org.apache.flink.streaming.connectors.kinesis.proxy.KinesisProxy.getRecords(KinesisProxy.java:234)
 at 
org.apache.flink.streaming.connectors.kinesis.internals.ShardConsumer.getRecords(ShardConsumer.java:311)
 at 
org.apache.flink.streaming.connectors.kinesis.internals.ShardConsumer.run(ShardConsumer.java:219)
 at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
 at java.util.concurrent.FutureTask.run(FutureTask.java:266)
 at 
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
 at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
 at java.lang.Thread.run(Thread.java:748){code}
 

 

The code shows that this exception is not caught and hence is not logged and 
can be detected only from the "exceptions" tab in Flink UI. People who use the 
connector cannot leverage logging and metrics when such an exception occurs.

It can be useful to catch all the throwables from the ShardConsumer's run() 
method and log them.

 

 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to