There are clearly 4 different outcomes for events in this code block, yet only 3 metrics are being incremented.
When an event is meant to the DLQ, :non_retryable_failures is incremented. This behaviour is fine is the DLQ is not actually enabled. If the DLQ is enabled, however, I think we should increment a new metric instead, so users can track this explicitly.