Hide Forgot
If an async job like a promotion fails the only thing we have is a record in the task_statues table but no mention in a logfile, a notification or perhaps even an email. For example, if a user starts a promotion of content and something goes wrong (pulp error, disk full, etc) they have no idea it failed and the only thing they can do is look in the database itself for errors using this procedure: https://fedorahosted.org/katello/wiki/TaskStatuses We need a few things to better handle this: 1) First we should dump all errors and exceptions into a logfile: /var/log/katello/delayed_job.log would be a fine location. This would elliminate the need to query the DB for the stacktrace 2) We should consider logging all exceptions as a notification to all users in an Org so they would see a red Error in the UI if we could get (1) ASAP that would help greatly for debugging
I believe Tomas just fixed this.
We are now raising exceptions when any of promotion subtasks fails. 1542d8c2 async tasks - raising exception when a task fails while waiting until it finishes I just realized that logging of delayed job exceptions is now enabled in development environment only. I'll enable it for production. One more issue is in cli command 'product promote' where we don't check result of the promotion and blindly print 'success'. I'm taking this one as well. I'm leaving notifications on UI folks to implement it in their controller.
Fixed the above two backend issues in following commits fc8f2931 767271 - logging for delayed jobs enabled in all environments cc45e423 767271 - message after 'product promote' takes promotion failure into account I created new bz for the UI part of this story (#768047). Moving this one ON_QA.
nice work guys, thanks for the fast turnaround
QA Verified via the UI, in part through verifying bug #768047