mirror of
https://github.com/apache/impala.git
synced 2026-02-02 06:00:36 -05:00
When the event-processor goes into the ERROR/NEEDS_INVALIDATE state, we can only check logs to get the detailed information. This is inconvenient in triaging failures. This patch exposes the error message in the /events WebUI. It includes the timestamp string and the stacktrace of the exception. This patch makes the /events page visable. Also modifies the test code of EventProcessorUtils.wait_for_synced_event_id() to print the error message if the event processor is down. A trivial bug of lastProcessedEvent is not updated (IMPALA-11588) is also fixed in this patch. Refactored the variable to be a member of the class so internal methods can update it before processing each event. Some new metrics are not added in the /events page, e.g. latest-event-id, latest-event-time-ms, last-synced-event-time-ms. This patch addes them and also add a metric of event-processing-delay-ms which is latest-event-time-ms minors last-synced-event-time-ms. Tests: - Manually inject codes to fail the event processor and verified the WebUI. - Ran metadata/test_event_processing.py when the event processor is in ERROR state. Verified the error message is shown up in test output. Change-Id: I077375422bc3d24eed57c95c6b05ac408228f083 Reviewed-on: http://gerrit.cloudera.org:8080/19916 Reviewed-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com> Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com>