一、xdebug扩展安装
网上很多类似的教程,这里不在详细描述,主要贴下我的xdebug相关配置供大家参考:zend_debugger.allow_hosts=127.0.0.1zend_debugger.expose_remotely=alwayszend_debugger.httpd_uid=-1xdebug.trace_format = 2xdebug.auto_trace = onxdebug.auto_profile = on ;打开性能分析xdebug.collect_params = onxdebug.collect_return = onxdebug.profiler_enable = 1xdebug.trace_output_dir = /tmpxdebug.profiler_output_dir=/tmp/xdebug ;性能分析生成的文件目录xdebug.trace_output_name = trace.%c.%pxdebug.show_exception_trace = On ;开启异常跟踪xdebug.show_local_vars = 0 xdebug.profiler_output_name=cachegrind.out.%sxdebug.dump.GET = *xdebug.dump.POST = *xdebug.dump.COOKIE = *xdebug.dump.SESSION = *xdebug.var_display_max_data = 4056xdebug.var_display_max_depth = 5 xdebug.remote_enable=on xdebug.remote_handler=dbgpxdebug.remote_host=127.0.0.1xdebug.remote_port=9010xdebug.remote_autostart=1
二、安装qcachegrind
1、刷新网页的时候,会在我配置的xdebug.profiler_output_dir目录/tmp/xdebug下生成性能分析文件,用来分析程序性能,下图是我生成的性能分析文件
2、打开具体的性能文件单独查看,发现可读性很差,这时就需要qcachegrind这个工具,将生成的性能分析文件用此工具打开就能很好的查看了。
性能分析文件直接打开效果:
使用qcachegrind工具打开后效果:
3、现在开始安装此工具吧(因为我用的是mac所以这里介绍用mac安装方式):
(1)brew install graphviz 执行此命令安装graphviz,用来Call Graph功能(2)brew install qcachegrind 安装qcachegrind(3)以上两步安装好后打开qcachegrind工具,发现Call Graph功能无法使用,[How to install qcachegrind (kcachegrind) on Mac OSX Snow Leopard][4] 此文章可以解决
sudo ln -s /usr/local/bin/dot /usr/bin/dot
(4)我的mac执行(3)中命令出错:
ln: /usr/bin/dot: Operation not permitted
查了下,发现是mac系统完整性保护,mac系统一些重要的系统目录禁止修改,即使是切换到root也不行,这时,可暂时修改: (1)关机后,开机的同时或者在听到开始音的同时,按住Command+R键 (2)打开Terminal窗口输入命令:csrutil disable; (3)重启电脑后再执行命令:sudo ln -s /usr/local/bin/dot /usr/bin/dot (4)重复(1)步骤,(2)步骤命令替换为:csrutil enable; 恢复默认的mac权限
4、可以将自己安装的qcachegrind应用复制到APPlication目录随时打开查看