为Python程序提供按需系统调用跟踪。
项目描述
Ptracer是一个提供Python程序按需系统调用跟踪的库。
基本用法
import traceback
import ptracer
def callback(syscall):
print('{}({}) -> {}'.format(
syscall.name,
', '.join(repr(arg.value) for arg in syscall.args),
syscall.result.text))
print('Traceback: ')
print(''.join(traceback.format_list(syscall.traceback)))
with ptracer.context(callback):
open('/dev/null', 'wb')
过滤
Ptracer允许通过filter参数进行复杂的系统调用过滤。
flt = [
ptracer.SysCallPattern(
name='open',
args=[
re.compile(b'/tmp/.*'),
lambda arg: arg.value & os.O_WRONLY
],
result=lambda res: res.value > 0
)
]
with ptracer.context(callback, filter=flt):
# traced code
...
在上面的示例中,ptracer只为尝试在“/tmp”目录中写入文件的成功尝试调用回调。
文档
文档可在ptracer.readthedocs.io上找到。
项目详情
关闭
ptracer-0.6.1.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | c5ea2fa289d25e8c2f5e17bbfce73e83768b1cabd691691dd5c861a1a23d7370 |
|
MD5 | 71df4db6e0cf848ca864585df8415db9 |
|
BLAKE2b-256 | cc501ae8d77481a026e0aaf3d2390798dc817eba0e2ffbef0dc96f3b22c0ef6d |
关闭
ptracer-0.6.1-cp39-cp39-macosx_12_0_arm64.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | bd71f235bb4bb842984eced02efb3baf9bf33911fadd015c13b253d407d9c725 |
|
MD5 | cfb9a718082d0e31b9e90c51ba662c4d |
|
BLAKE2b-256 | 2e479bf3edb27e36bf6aa739e98c2e8301e8c0108a4fa3bf9b211a7023f1d7af |