| 1234567891011121314151617181920212223242526272829303132333435 |
- import logging
- import traceback
- import sys
- # 配置你的 logger
- logging.basicConfig(level=logging.ERROR,
- format='%(asctime)s - %(levelname)s - %(message)s',
- filename='error.log',
- filemode='a')
- logger = logging.getLogger(__name__)
- def func_that_might_fail():
- # 模拟一个会抛出错误的操作
- result = 1 / 0
- return result
- try:
- func_that_might_fail()
- except Exception as e:
- # 打印异常信息到控制台(可选)
- # traceback.print_exc()
- # 获取完整的异常 traceback 信息作为字符串
- # traceback.format_exc() 默认情况下会获取当前活跃的异常信息
- # 如果在 except 块外部调用,需要传入 exc_info
- exc_traceback = traceback.format_exc()
- # 或者使用 sys.exc_info() 获取元组,然后传递给 format_exception
- # exc_type, exc_value, exc_traceback_obj = sys.exc_info()
- # exc_traceback = "".join(traceback.format_exception(exc_type, exc_value, exc_traceback_obj))
- logger.error("An error occurred: %s\n%s", e, exc_traceback)
- print("程序继续执行...")
|