当前位置: 首页 > 工具软件 > phptrace > 使用案例 >

php trace 函数,GitHub - liuyuqiang/phptrace: php程序跟踪和分析工具,从PHP Runtime中获取程序的上下文及函数调用情况,适用于线上快速分析定位阻塞、负...

冯阳成
2023-12-01

phptrace

php程序跟踪和分析工具,从PHP Runtime中获取程序的上下文及函数调用情况,适用于线上快速分析定位阻塞、负载高等疑难杂症

phptrace介绍及使用

QQ交流群: 428631461

Building

编译cmdtool

tar -zxf phptrace-.tar.gz

cd phptrace-

cd cmdtool

make

编译PHP扩展

cd phpext

phpize

./configure --with-php-config=/path/to/php-config

make

Installing

cmdtool编译后, 可直接使用其目录下的phptrace命令。

PHP扩展需要安装到PHP相关目录:

make install

编辑php.ini,启用扩展

extension=phptrace.so

phptrace.enabled=1

Usage

$ phptrace -p #trace PHP函数调用

$ phptrace -p -s #打印PHP调用栈

Examples

打印调用栈

$ ./phptrace -p 3130 -s

phptrace 0.1 demo, published by infra webcore team

process id = 3130

script_filename = /home/xxx/opt/nginx/webapp/block.php

[0x7f27b9a99dc8] sleep /home/xxx/opt/nginx/webapp/block.php:6

[0x7f27b9a99d08] say /home/xxx/opt/nginx/webapp/block.php:3

[0x7f27b9a99c50] run /home/xxx/opt/nginx/webapp/block.php:10

trace PHP函数调用

$ ./phptrace -p 2459

1417506346.727223 run()

1417506346.727232 say($msg = "hello world")

1417506346.727241 sleep($seconds = "1")

1417506347.727341 sleep => 0 1.000100

1417506347.727354 say => hello world 1.000122

1417506347.727358 run => nil 1.000135

 类似资料: