Avoid leaving a push event empty if payload cannot be created
If the payload cannot be created for some reason, we could be left with a nil push event payload, which causes Error 500s when viewing the dashboard. Guard against this error and log when it happens.
Avoids problems seen in #38823 (moved)