Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/littlebutt/hot-diagnose
运行时代码诊断工具
https://github.com/littlebutt/hot-diagnose
debugger-visualizer diagnose runtime
Last synced: 16 days ago
JSON representation
运行时代码诊断工具
- Host: GitHub
- URL: https://github.com/littlebutt/hot-diagnose
- Owner: littlebutt
- License: gpl-3.0
- Created: 2023-08-13T00:15:05.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2023-10-15T06:20:55.000Z (about 1 year ago)
- Last Synced: 2024-03-15T09:52:01.969Z (9 months ago)
- Topics: debugger-visualizer, diagnose, runtime
- Language: Python
- Homepage: https://pypi.org/project/hot-diagnose/
- Size: 5.65 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.rst
- License: LICENSE
Awesome Lists containing this project
README
=======================================
Hot-diagnose: Python代码运行时诊断工具
=======================================hot-diagnose是Python程序运行时诊断工具,也是唯一能够做到实时代码分析功能。它具有以下特点:
* 运行时诊断(Runtime Diagnose): 它可以根据不同运行参数、上下文环境,动态诊断Python程序运行效果。同时,
由于Python的动态语言特性,该工具可以在程序运行时实时分析程序状态,更新诊断结果。
* 插件化(Plug-in Support): 该工具通过插件的方式提供大部分业务功能。用户也可以通过API实现自己的诊断工具。* 无第三方依赖(No thrid-party dependency): 为了提高项目可维护性,最大发挥性能,该工具主体部分不依赖任何第三方包,
渲染依赖少量的JS包。安装
===============目前该工具已上传pypi,可以通过pip安装该工具。同样也可以使用conda、pdm等方式:
.. code-block:: console
pip install hot-diagnose
此外,也可以通过``setup.py``直接安装:
.. code-block:: console
python setup.py install
使用
================基础
----------------hot-diagnose既支持Python脚本诊断,也支持Python包诊断。在诊断Python包时需要确定``PYTHONPATH``。
比如诊断Python脚本:.. code-block:: console
python -m diagnose -s script.py args1 args2
诊断Python包:
.. code-block:: console
python -m diagnose -s package_entrance.py -p pythonpath args1 args2
更多详细的运行参数可以通过运行以下代码获得:
.. code-block:: console
python -m diagnose -h
执行完毕后,hot-diagnose会自动弹出HTML页面展示诊断过程和结果。
诊断脚本:
.. image:: ./docs/img/scripts.gif
诊断包:
.. image:: ./docs/img/packages.gif
以上展示的是不包含任何插件的运行截图,通过插件可以实现代码覆盖率统计、Trace统计、Stack Frame统计等。
高级
----------------hot-diagnose提供后端和前端两部分API为用户提供插件编写的接口
(未完待续)
贡献
================
(未完待续)