이 함수는 기본 실행에서 예외를 잡아야합니다. 예외가있는 경우 log.error(traceback.print_exc())
과 함께 오류를 인쇄하고 exit_main()
으로 정리해야합니다. 예외가 있다면파이썬 traceback.print_exc()는 '없음'을 반환합니다.
def main():
try:
exec_app()
except KeyboardInterrupt:
log.error('Error: Backup aborted by user.')
exit_main()
except Exception:
log.error('Error: An Exception was thrown.')
log.error("-" * 60)
log.error(traceback.print_exc())
log.error("-" * 60)
exit_main()
불행하게도 log.error(traceback.print_exc())
만 None
를 반환 않습니다. 이 경우 추적 보고서에 전체 오류 보고서를 인쇄하려면 어떻게해야합니까?
추신 : 저는 python 3.4를 사용합니다. 그 __doc__
에서
어떤 유형의 예외가'traceback.print_exc()'로 기록 될 것으로 예상하십니까? 'KeyboardInterrupt'를 제외한 모든 예외를 기록합니다. – ettanany
예. 그것은'exec_app()'안에서 잡히지 않은 모든 예외를 처리해야합니다. – Rotareti