I can remove the old_level attribute that I invented, but using addHandler should be thread safe (at least it isn't mentioned in the official pydocs). For this code I will change this to use the exception handler as suggested, but this is used from the recently committed sysadmin dashboard which is pretty reliant on getting the log information from multiple sources to provide useful feedback to the user.