houxiaobei / xhprof
此包最新版本(dev-master)无可用许可证信息。
XHGUI是XHProf PHP扩展的图形用户界面,使用数据库后端和精美的图表,使其易于使用和解释。
dev-master
2015-11-08 12:34 UTC
This package is not auto-updated.
Last update: 2024-09-18 18:03:17 UTC
README
这是一个图形前端,旨在存储和展示Facebook创建的XHProf分析工具提供的分析信息。
相关工具
项目包含
- 它包括一个header.php文档,您可以使用PHP的auto_prepend_file指令使用它。通过初始化一些变量并使用footer设置register_shutdown_function来设置分析。一旦开始,当请求时(?_profile=1),或随机时,分析完成。分析页面在页面底部显示其分析结果的链接(这可以根据特定的文档禁用,例如生成XML、图像等的页面)。
- 有关在nginx + php-fpm上包含header.php的提示,请参阅:http://www.justincarmony.com/blog/2012/04/23/php-fpm-nginx-php_value-and-multiple-values/
- GUI更美观(感谢Graham Slater)
- 它使用MySQL后端,数据库模式存储在xhprof_runs.php中
- 有一个前端可以查看不同的运行,比较相同URL的运行等。
关键功能
- 列出25、50个最近的运行
- 显示当天最昂贵(CPU)、运行时间最长或内存使用量最高的运行
- 它引入了“相似”URL的概念。考虑以下
- http://news.example.com/?story=23
- http://news.example.com/?story=25 尽管URL不同,但PHP代码执行路径可能相同,通过调整xhprof_runs.php中的方法,可以帮助前端意识到这些URL是相同的。
- 使用Highcharts图形化统计信息,以便轻松查看。
要求
除了在您喜欢的Web服务器上运行简单的PHP外,您还需要以下包
- php5-xhprof
- php5-mysql
- graphviz(使用
dot
生成调用图)
安装
- 安装您喜欢的PHP和Web服务器组合
- 安装MySQL服务器
- 将项目克隆到某个文件夹中
- 将子文件夹
xhprof_html
映射为可通过HTTP访问 - 将
xhprof_lib/config.sample.php
移动到xhprof_lib/config.php
- 编辑
xhprof_lib/config.php
- 更新SQL服务器配置
- 更新服务URL(应指向HTTP上的
xhprof_html
) - 更新
dot_binary
配置 - 否则没有调用图! - 更新
controlIPs
变量以启用访问。 - 对于开发机器,可以将此设置为
false
以禁用IP检查。 - 导入DB模式(只有一个表)
- 请参阅xhprof_runs.php中的SQL
- 添加PHP配置以启用分析
- 如果使用Apache,您可以编辑您的虚拟主机配置
- 添加
php_admin_value auto_prepend_file "/path/to/xhprof/external/header.php"
- 访问 http://your-server/xhprof/xhprof_html/ 并感到惊讶!
- 要显示分析器信息,请使用带有
GET
变量_profile=1
的方式访问您的页面。 - 例如
https:///?_profile=1
我们正在努力改进
- 聚合功能完全被忽略
- 代码...一团糟。截止日期就是这样对你,我们正在努力改进
- 默认的表模式没有在需要的地方建立索引
- 更易于比较URL的简便方法