PHPTrace 0.3 发布,线上调试工具

Qihoo360
 Qihoo360
发布于 2015年05月22日
收藏 64

最近两周,PHPTrace发布了0.3版本,这次新版本发布距离上一次更新将近两个月。在这段时间里,我们放缓了新功能的开发,重新推敲这个工具能够为大家带来的价值,并且在细节和稳定性方面都有了很大的提升。

PHPTrace是什么? PHPTrace是一个低开销的用于跟踪、分析PHP运行情况的工具。

它可以跟踪PHP在运行时的函数调用、请求信息、执行流程,并且提供有过滤器、统计信息 、当前状态等实用功能。在任何环境下,它都能很好的定位阻塞问题以及在高负载下Debug,尤其是线上产品环境

新版本改动

PECL

相信有心的同学一定发现PHPTrace出现在PECL了。

没错,我们将新版本发布到了PHP官方的扩展库中,伴随而来的还有:

  • 开源协议变更为Apache 2.0

  • 扩展的名称变更为trace

关注细节

  • 为了将trace功能本身做到极致,我们对PHP的扩展做了重构,并且着重完善了很多细节:

  • 新增对main函数、include、require、闭包、匿名函数、eval()等特殊调用的支持

  • 新增对PHP紧急退出后未完成的调用信息的持续收集

  • 新增对Trait的Alias名称支持

  • 新增对PHP 5.1的支持

  • 优化zval的表现形式,完善对数组、对象的支持

  • 优化扩展在非trace期间的性能(通过Zend/bench.php测试与不加载扩展时一致)

这里可以查看全部改动的说明。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:PHPTrace 0.3 发布,线上调试工具
加载中

最新评论(25

tomener
tomener
PHP用感知哈希(Perceptual Hash)算法实现识图搜索功能 基于PHP GD库实现的图片感知哈希算法: https://github.com/jenssegers/php-imagehash 图片的感知哈希值相近,则认为图片是相似的.
海诺者
海诺者

引用来自“南湖船老大”的评论

PHP终于有在线性能跟踪和检测软件了,迈出了向现代编程语言的第一步,虽然还很弱小很粗糙,但也是进步啊。

引用来自“海诺者”的评论

老早就有这种类型的了,zenddebug xdebug都属于此类型

引用来自“南湖船老大”的评论

调试和性能检测是两回事。况且xdebug差的太远,在线对性能影响较大,提供的特性太少太少,可用性很低

引用来自“海诺者”的评论

哈哈,你这不是比我懂得多了,看来只有那个xhprof和这个trace合适了

引用来自“南湖船老大”的评论

我所理解的性能监测,至少要能深入到系统Api这个层次,需要能明确给出程序所占用内存的大小(包括堆和栈),定义了多少变量,每组类型的变量占了多少内存,能绘出cpu和每个区内存的变化曲线,能导出dump文件事后分析。我曾经遇到过线上PHP的性能问题,用各种调试工具都没法解决,后来是用了trace工具才找到根源。
根源是啥?
南湖船老大
南湖船老大

引用来自“南湖船老大”的评论

PHP终于有在线性能跟踪和检测软件了,迈出了向现代编程语言的第一步,虽然还很弱小很粗糙,但也是进步啊。

引用来自“海诺者”的评论

老早就有这种类型的了,zenddebug xdebug都属于此类型

引用来自“南湖船老大”的评论

调试和性能检测是两回事。况且xdebug差的太远,在线对性能影响较大,提供的特性太少太少,可用性很低

引用来自“海诺者”的评论

哈哈,你这不是比我懂得多了,看来只有那个xhprof和这个trace合适了
我所理解的性能监测,至少要能深入到系统Api这个层次,需要能明确给出程序所占用内存的大小(包括堆和栈),定义了多少变量,每组类型的变量占了多少内存,能绘出cpu和每个区内存的变化曲线,能导出dump文件事后分析。我曾经遇到过线上PHP的性能问题,用各种调试工具都没法解决,后来是用了trace工具才找到根源。
eechen
eechen

引用来自“MrCong”的评论

PHP 可以称霸宇宙。
PHP可以快速用关联数组描绘世界万物的关系,就是那么拽.
海诺者
海诺者

引用来自“南湖船老大”的评论

PHP终于有在线性能跟踪和检测软件了,迈出了向现代编程语言的第一步,虽然还很弱小很粗糙,但也是进步啊。

引用来自“海诺者”的评论

老早就有这种类型的了,zenddebug xdebug都属于此类型

引用来自“南湖船老大”的评论

调试和性能检测是两回事。况且xdebug差的太远,在线对性能影响较大,提供的特性太少太少,可用性很低
哈哈,你这不是比我懂得多了,看来只有那个xhprof和这个trace合适了
MrCong
MrCong
PHP 可以称霸宇宙。
老张大哥
老张大哥

引用来自“李玉亮”的评论

PHP是世界上最好的语言.!!

引用来自“南湖船老大”的评论

这么一个国际化的,世界上最好的编程语言还要依靠国内某公司来做性能分析和检测软件。要是没有某公司,不知还要等多久。它这么无助和努力,你们知道吗?干嘛还要黑人家?

引用来自“eechen”的评论

别逗,PHPTrace的优势在于能用于线上产品环境.事实上xdebug.profiler输出的信息cachegrind.out使用kcachegrind查看就可以看到PHP函数调用关系和耗时.另外,Facebook还自己弄了个轻量级的xhprof用来做线上性能分析.真正黑PHP的是你吧,呵呵.
5.1不是在浪费时间吗?
南湖船老大
南湖船老大

引用来自“南湖船老大”的评论

PHP终于有在线性能跟踪和检测软件了,迈出了向现代编程语言的第一步,虽然还很弱小很粗糙,但也是进步啊。

引用来自“海诺者”的评论

老早就有这种类型的了,zenddebug xdebug都属于此类型
调试和性能检测是两回事。况且xdebug差的太远,在线对性能影响较大,提供的特性太少太少,可用性很低
海诺者
海诺者

引用来自“南湖船老大”的评论

PHP终于有在线性能跟踪和检测软件了,迈出了向现代编程语言的第一步,虽然还很弱小很粗糙,但也是进步啊。
老早就有这种类型的了,zenddebug xdebug都属于此类型
eechen
eechen

引用来自“李玉亮”的评论

PHP是世界上最好的语言.!!

引用来自“南湖船老大”的评论

这么一个国际化的,世界上最好的编程语言还要依靠国内某公司来做性能分析和检测软件。要是没有某公司,不知还要等多久。它这么无助和努力,你们知道吗?干嘛还要黑人家?
别逗,PHPTrace的优势在于能用于线上产品环境.事实上xdebug.profiler输出的信息cachegrind.out使用kcachegrind查看就可以看到PHP函数调用关系和耗时.另外,Facebook还自己弄了个轻量级的xhprof用来做线上性能分析.真正黑PHP的是你吧,呵呵.
返回顶部
顶部