#python-module #component #trace #com #hook #information #events

bin+lib functiontrace-server

FunctionTrace (functiontrace.com) 客户端将生成并连接到的服务器组件

26 个版本

0.8.0 2024 年 7 月 27 日
0.7.1 2023 年 9 月 26 日
0.6.1 2023 年 9 月 10 日
0.5.4 2023 年 6 月 9 日
0.1.4 2020 年 5 月 21 日

#245 in 调试

Download history 1/week @ 2024-04-26 21/week @ 2024-05-17 17/week @ 2024-05-24 2/week @ 2024-05-31 5/week @ 2024-06-07 4/week @ 2024-06-14 18/week @ 2024-07-19 171/week @ 2024-07-26 12/week @ 2024-08-02 5/week @ 2024-08-09

每月 206 次下载

自定义许可证

66KB
1K SLoC

有关最终用户说明和演示,请参阅 https://functiontrace.com/

Functiontrace 实现为两个组件

  1. 一个用 Rust 编写的服务器,用于汇总运行进程的跟踪信息
  2. 一个用 C 和 Python 编写的 Python 模块,它钩入各种跟踪事件。

开发信息

使用 Nix 进行开发

使用 Nix,我们使用 devenv 来拥有一个标准的测试和开发环境。标准开发流程是使用 devenv shell 设置该环境。

devenv shell
just test

你可以在现有的 devenv shell 内测试小改动,包括使用我们支持的多数 Python 变体。要重新构建 Python 模块,你需要告诉 Nix 通过重新启动你的 devenv shell 来重新构建。

使用标准 Python 进行开发

构建服务器

$ just build-server

构建 Python 模块

$ just build-python
$ python setup.py bdist_wheel --dist-dir ./dist

# You may also want to install it
$ pip install py-functiontrace/dist/*.whl

测试

你必须安装 functiontrace,并将 functiontrace-server 添加到你的 $PATH 中。Nix 开发路径应该为你做这件事。

# The test script will use the server built in target/release
$ just test

依赖关系

~12–26MB
~390K SLoC