@Override public void errorInFilter(final AnalysisJob job, final FilterJob filterJob, final InputRow row, final Throwable throwable) { logger.warn("errorInFilter({},{},{},{})", new Object[] { job, filterJob, row, throwable }); handleError(job, throwable); }
private RowProcessingPublishers getRowProcessingPublishers(final AnalysisJob job, final LifeCycleHelper lifeCycleHelper) { final SingleThreadedTaskRunner taskRunner = new SingleThreadedTaskRunner(); final ErrorAwareAnalysisListener errorAwareAnalysisListener = new ErrorAwareAnalysisListener(); return new RowProcessingPublishers(job, errorAwareAnalysisListener, errorAwareAnalysisListener, taskRunner, lifeCycleHelper); }
final ErrorAwareAnalysisListener errorAwareAnalysisListener = new ErrorAwareAnalysisListener(); final AnalysisListener analysisListener = new CompositeAnalysisListener(rowConsumeConfiguration.analysisListener, errorAwareAnalysisListener);
@Override public AnalysisResultFuture run(final AnalysisJob job) { final Queue<JobAndResult> resultQueue = new LinkedBlockingQueue<>(); // This analysis listener will keep track of all collected errors final ErrorAwareAnalysisListener errorListener = new ErrorAwareAnalysisListener(); // This analysis listener is a composite for all other listeners final CompositeAnalysisListener analysisListener = new CompositeAnalysisListener(errorListener, _sharedAnalysisListeners); if (DebugLoggingAnalysisListener.isEnabled()) { // enable debug logging? analysisListener.addDelegate(new DebugLoggingAnalysisListener()); } else if (InfoLoggingAnalysisListener.isEnabled()) { analysisListener.addDelegate(new InfoLoggingAnalysisListener()); } // set up the task runner that is aware of errors final TaskRunner taskRunner = new ErrorAwareTaskRunnerWrapper(errorListener, _configuration.getEnvironment().getTaskRunner()); final boolean includedNonDistributed = isNonDistributedTasksIncluded(); // the delegate will do all the actual work final AnalysisRunnerJobDelegate delegate = new AnalysisRunnerJobDelegate(job, _configuration, taskRunner, analysisListener, resultQueue, errorListener, includedNonDistributed); return delegate.run(); }
@Override public void errorUnknown(final AnalysisJob job, final Throwable throwable) { logger.warn("errorUnknown({},{})", new Object[] { job, throwable }); handleError(job, throwable); }
@Override public void errorInTransformer(final AnalysisJob job, final TransformerJob transformerJob, final InputRow row, final Throwable throwable) { logger.warn("errorInTransformer({},{},{},{})", new Object[] { job, transformerJob, row, throwable }); handleError(job, throwable); }
@Override public void errorInAnalyzer(final AnalysisJob job, final AnalyzerJob analyzerJob, final InputRow row, final Throwable throwable) { logger.warn("errorInAnalyzer({},{},{},{})", new Object[] { job, analyzerJob, row, throwable }); handleError(job, throwable); }