[ https://issues.apache.org/jira/browse/APEXCORE-642?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15862989#comment-15862989 ]
Vlad Rozov commented on APEXCORE-642: ------------------------------------- I'd prefer to log exception in the main as it is the top most method and logging exception in serviceInit will lead to double logging as serviceInit() is not called directly by StreamingAppMaster, so there may be exceptions raised by a middle man and it will be impossible to distinguish exceptions raised by a middle man from exceptions raised by StreamingAppMasterService and already logged. It is OK to create StramEvent in the serviceInit() assuming that there is a way to record the event. As events are reported asynchronously, reporting an event and terminating app master will likely lead to the event being lost. > Catch all exceptions in StreamingAppMasterService.serviceInit() and create a > StramEvent > --------------------------------------------------------------------------------------- > > Key: APEXCORE-642 > URL: https://issues.apache.org/jira/browse/APEXCORE-642 > Project: Apache Apex Core > Issue Type: Bug > Reporter: Sanjay M Pujare > Assignee: Sanjay M Pujare > Priority: Minor > Original Estimate: 48h > Remaining Estimate: 48h > > When the AM (Stram) starts, it executes > StreamingAppMasterService.serviceInit() to perform service initialization as > per the Hadoop service contract. In this, the Stram deserializes the DAG > which can fail (e.g. bad jar versions or other deserialization issues) and > any exception is thrown is not logged in Apex log files or events. It is > proposed to catch these exceptions and log them to the dt log file as well as > Stram events so the Apex user knows about these exceptions. -- This message was sent by Atlassian JIRA (v6.3.15#6346)