coredumpy 项目使用指南
1. 项目目录结构及介绍
coredumpy 项目是一个用于保存崩溃现场以便后续调试的开源项目。以下是项目的目录结构及各部分功能的简要介绍:
coredumpy/
├── .github/ # GitHub 工作流目录
│ └── workflows/ # GitHub Actions 工作流文件
├── img/ # 图片资源目录
├── src/ # 源代码目录
│ └── coredumpy/ # coredumpy 主模块
├── tests/ # 测试代码目录
├── .coveragerc # coverage 配置文件
├── .gitignore # Git 忽略文件
├── LICENSE # Apache-2.0 许可文件
├── Makefile # Makefile 文件
├── NOTICE.txt # 法律声明文件
├── README.md # 项目说明文件
├── pyproject.toml # Python 项目配置文件
├── requirements-dev.txt # 开发环境依赖文件
2. 项目的启动文件介绍
项目的启动文件主要是 src/coredumpy/__init__.py
,这个文件定义了 coredumpy 模块,并提供了以下几个主要功能:
dump()
:手动触发崩溃现场的保存。load()
:加载崩溃现场文件,并启动调试器。peek()
:查看崩溃现场文件的简要信息。patch_except()
、patch_unittest()
和patch_pytest()
:分别用于在不同的场景下自动触发崩溃现场的保存。
3. 项目的配置文件介绍
项目的配置文件为 coredumpy/config.py
,其中包含了 coredumpy 的默认配置项。以下是一些主要的配置项:
# 崩溃现场保存的默认递归深度
config.default_recursion_depth = 10
# 崩溃现场保存的尽力而为超时时间(秒)
config.dump_timeout = 60
# 是否保存所有线程的信息
config.dump_all_threads = True
# 是否隐藏匹配特定模式的敏感信息
config.hide_secret = True
# 敏感信息的匹配模式
config.secret_patterns = [re.compile(r"[A-Za-z0-9]{32,1024}")]
# 是否隐藏环境变量中的敏感信息
config.hide_environ = True
# 环境变量过滤函数
config.environ_filter = lambda env: len(env) > 8
用户可以根据自己的需求调整这些配置项,以达到最佳的使用效果。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考