python程序的按需系统调用跟踪。

ptracer的Python项目详细描述


https://travis-ci.org/pinterest/ptracer.svg?branch=master

ptracer是一个在python中提供按需系统调用跟踪的库 程序。

基本用法

importtracebackimportptracerdefcallback(syscall):print('{}({}) -> {}'.format(syscall.name,', '.join(repr(arg.value)forarginsyscall.args),syscall.result.text))print('Traceback: ')print(''.join(traceback.format_list(syscall.traceback)))withptracer.context(callback):open('/dev/null','wb')

过滤

ptracer允许通过filter参数进行详细的系统调用过滤:

flt=[ptracer.SysCallPattern(name='open',args=[re.compile(b'/tmp/.*'),lambdaarg:arg.value&os.O_WRONLY],result=lambdares:res.value>0)]withptracer.context(callback,filter=flt):# traced code...

在上面的例子中,ptracer将只调用成功的回调 尝试打开“/tmp”目录中的文件进行写入。

文件

文件可在 ptracer.readthedocs.io

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java使用唯一的按钮标签单击按钮   代码生成如何使用Java codeModel为数组的特定索引赋值   java如何批量执行Camel SQL插入   java iText 7将ltv添加到现有签名   内存管理Java应用程序突然停止几天后(810)   带MySQL的java注册表单JavaFX在intellij中失败   如何使用eclipse为windows azure java项目启用远程调试   一种通用的java输入输出设计模式   java Android XML(RSS)忽略引号(“”)   java帮助:安卓中的8 X 10 2维按钮数组   java启动Android项目   JWrapper构建java应用程序   java如何在Android应用程序中设置基于日期/时间的默认页面加载?   java循环程序在完成后返回到起点   java Hibernate:更好的整体类还是多类映射?   回溯数独解算器的递归问题[Java]   java查找类用法   java如何在SpringWebFlow中将多个模型绑定到一个视图?