XhProf安装教程–详细教程
- wget
去这里找最新的包下载,我现在最新的是xhprof-0.9.4.tgzcd /tmp
mkdir xhprof && cd xhprof
wget http://pecl.php.net/get/xhprof-0.9.4.tgz
tar -xvf xhprof-0.9.4.tgz
cd xhprof-0.9.4/extension/
phpize我在进行这步的时候,提示我没有安装phpize,下一步就是安装phpize,如果已经安装了phpize,可以跳过下一步
- phpize
因为phpize在php-devel包里面,所以先需要安装php-develyum search php-devel
如果你和我一样,找不到这个包的话,建议添加电子科技大学的源
cd /tmp
wget http://mirrors.stuhome.net/files/centos_repo/6/CentOS-Base.repo
cp CentOS-Base.repo /etc/yum.repos.d/CentOS-Base-Uestc.repo -v
yum makecache
yum install php-devel -y装好了phpize就可以进行安装了
phpize
- 接下来是源码安装三部曲:
whereis php-config
/*看看你的php-config在什么路径,然后放到后面的path-to php-config,一般是/usr/bin/php-config */
./configure --with-php-config=<path to php-config >
make
make install
mkdir -p /var/tmp/xhprof - 编译添加了xhprof.so文件,现在需要配置php启用这个so文件,去/etc/php.d/文件夹下面添加文件xhprof.ini
extension=xhprof.so
xhprof.outout_dir=/var/tmp/xhprof
/*请确定上面配置的/var/tmp/xhprof目录是存在的*/然后就是重新启动你的php,之后用命令查看
php -ini | grep xhprof -i
看看是否已经安装上了,安装好了之后,就可以开始设置监控了
- 将文件拷贝到网站目录里面,然后添加监控代码到统计文件中
mkdir -p /var/www/xhprof && cd /var/www/xhprof/
cp -r /tmp/xhprof/xhprof-0.9.4/xhprof_html/ ./
cp -r /tmp/xhprof/xhprof-0.9.4/examples/ ./
cp -r /tmp/xhprof/xhprof-0.9.4/xhprof_lib/ ./
mkdir logs配置nginx的虚拟主机目录,在/etc/nginx/conf.d/目录下面新建xhprof.conf
然后修改文件内容为:server{
listen 80;
server_name effect.vpsbuy.info;
root /var/www/xhprof;
access_log /var/www/xhprof/logs/access.log;
error_log /var/www/xhprof/logs/error.log;
index index.php; location = favicon.ico {
log_not_found off;
access_log off;
} location = /robots.txt{
allow all;
log_not_found off;
access_log off;
}
location / {
root /var/www/xhprof;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass php;
fastcgi_index xhprof_html/index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}重新启动nginx
nginx -t
nginx -s reload修改examples目录下面的sample.php文件,将最后一行的echo改成这样
echo "---------------\n".
"Assuming you have set up the http based UI for \n".
"XHProf at some address, you can view run at \n".
"http://effect.vpsbuy.info/xhprof_html/index.php?run=$run_id&source=xhprof_foo\n".
"---------------\n";将这个
http://effect.vpsbuy.info/xhprof_html/
改成你自己的url路径。
然后就是配置监控$xhprof_enable = false;
if(mt_rand(1,10)==1){ //这里设置监控的比例
xhprof_enable();
$xhprof_enable = true;
}
//这里写上你要监控的函数
if($xhprof_enable ){
$xhprof_data = xhprof_disable();
//$XHPROF_ROOT = realpath(dirname(__FILE__) .'/..');
$XHPROF_ROOT = /var/www/xhprof;
include_once $XHPROF_ROOT . "/xhprof_lib/utils/xhprof_lib.php";
include_once $XHPROF_ROOT . "/xhprof_lib/utils/xhprof_runs.php";
// save raw data for this profiler run using default
// implementation of iXHProfRuns.
$xhprof_runs = new XHProfRuns_Default();
// save the run under a namespace "xhprof_foo"
$run_id = $xhprof_runs->save_run($xhprof_data, "xhprof_foo");
}现在就可以统计了,然后就是安装生成访问图像的
yum install graphviz
如果你觉得写得不错,请捐赠作者:
作者:
- 原文地址:http://www.factj.com/archives/147.html
- 微博:http://weibo.com/fudance
- 邮箱:strivescript#sina.com
XhProf安装教程–详细教程的更多相关文章
- 安装WordPress详细教程指南
最近准备自己建一个个人博客,以便分享一些自己工作生活中的一些观点及经验,建博客当然选wordpress,毕竟wordpress是为博客而生的嘛.下边记录一下自己安装WordPress的详细过程指南,亦 ...
- Ubuntu下安装JDK详细教程
Ubuntu下安装JDK详细教程 作者:凯鲁嘎吉 - 博客园http://www.cnblogs.com/kailugaji/ Ubuntu版本:Ubuntu-12.04.5-desktop-i386 ...
- Windows下安装MySQL详细教程
Windows下安装MySQL详细教程 1.安装包下载 2.安装教程 (1)配置环境变量 (2)生成data文件 (3)安装MySQL (4)启动服务 (5)登录MySQL (6)查询用户密码 (7 ...
- npm安装vue详细教程(图片详解)
npm安装vue详细教程(图片详解) 一.总结 一句话总结:整个安装流程照着教程来,注意系统环境变量的配置,注意一下npm的本地仓库和缓存位置 教程 系统环境变量 仓库 缓存 1.什么情况下最适合用n ...
- ubuntu安装scala详细教程
ubuntu14 安装scala详细教程 1.下载scala压缩包 http://www.scala-lang.org/download/ 2.建立目录,解压文件到所建立目录 $ sudo mkdir ...
- Centos7安装Typecho详细教程
Centos7安装Typecho详细教程 首先搭建LAMPH环境 L linux 服务器(centos或者ubunt) .A Apache .M mysql .P PHP 安装Apache.PHP ...
- Linux系统下Dubbo安装的详细教程
Linux系统下Dubbo安装的详细教程 1.Dubbo的简介 Dubbo是 [1] 阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 [ ...
- Windows安装Jenkins详细教程(图文教程)
一.安装前准备 1.提前安装好jdk,可参考以下链接进行安装 Windows安装JDK详细教程(图文教程) 2.Jenkins官网下载安装包(因为本人jdk安装的是1.8,所以会和最新版jenkins ...
- Mysql安装的详细教程
首先,针对本人最近几天各种电脑安装数据库失败,反思总结所有的方式.现写出详细教程,希望别的人少走弯路. 首先 这次内容分为如下几步 : 1.mysql之前安装的彻底清除 2.mysql版本的选取 3. ...
- Linux 安装 Tomcat 详细教程
Linux 安装Tomcat详细步骤 1. 前往tomcat官网复制下载链接, tomcat官网地址:https://tomcat.apache.org/ 2. 进入到指定目录,使用 wget 命令下 ...
随机推荐
- 关于 Unity NavMesh 数据的访问
目前的工作需要加入自动寻路,后来决定使用 unity 自带的 NavMesh,但有个问题是这个寻路数据,服务器也是需要的,那么我就要把这个数据导出为服务器所用才行. 但 NaveMesh 暂 ...
- CSS---网络编程
CSS概述 CSS是层叠样式表(Cascading Style Sheets)用来定义网页的显示效果.可以解决html代码对样式定义的重复,提高了后期样式代码的可维护性,并增强了网页的显示效果功能.简 ...
- Oracle创建表空间、创建用户、授权用户、导入dmp备份语句
create tablespace TOPSCF_CHS_TS datafile 'D:\TableSpace\TOPSCF_CHS_TS.dbf' size 512M extent managem ...
- How to effectively work with multiple files in Vim?
Why not use tabs (introduced in Vim 7)? You can switch between tabs with :tabn and :tabp, With :tabe ...
- 超强vim配置文件
简易安装方法: https://github.com/ma6174/vim 打开终端,执行下面的命令就自动安装好了: wget -qO- https://raw.github.com/ma6174/v ...
- IO(Input Output)流__字符流
一.IO流简述------用于操作数据的 IO流用来处理设备之间的数据传输; Java对数据的操作是通过流的方式; Java用于操作流的对象都是在IO包中; 流按操作数据分为: 字节流(通用)和字符流 ...
- [置顶] 文件io(一)--unix环境高级编程读书笔记
unix-like(后面以linux为例)系统中的文件操作只需要五个函数就足够了,open.close.read.write以及lseek.这些操作被称为不带缓存的io,这里有必要说一下带缓存和不带缓 ...
- ios 利用Reveal来调试界面1 --模拟器(步骤详解)
Reveal是一个程序界面调试工具,可以调试iOS apps和tvOS apps.使用Reveal,我们可以在开发时动态地查看和修改应用程序的界面.避免每次修改UI的时候都要重新运行程序.接下来按照规 ...
- ABAP(笔记)
1.excel表格上传 *&---------------------------------------------------------------------* ** 程序名称:ZSD ...
- AndroidUI组件之ActionBar--基于下拉的导航方式
在上一篇关于ActionBar的博文中.我们知道了ActionBar是Android3.0的重要更新之中的一个.本篇博文就来写一个开发中经经常使用到的样例.用ActionBar提供基于下拉的导航方 ...