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分析工具提供的分析信息。

相关工具

  • XHGui - 使用MongoDB作为后端(而不是MySQL)
  • XHProf.io - 使用MySQL后端,更规范化的存储模式

项目包含

  • 它包括一个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的概念。考虑以下
  • 使用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的简便方法