• wget
    去这里找最新的包下载,我现在最新的是xhprof-0.9.4.tgz

    cd /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-devel
    yum 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

    如果你觉得写得不错,请捐赠作者:

    作者:

XhProf安装教程–详细教程的更多相关文章

  1. 安装WordPress详细教程指南

    最近准备自己建一个个人博客,以便分享一些自己工作生活中的一些观点及经验,建博客当然选wordpress,毕竟wordpress是为博客而生的嘛.下边记录一下自己安装WordPress的详细过程指南,亦 ...

  2. Ubuntu下安装JDK详细教程

    Ubuntu下安装JDK详细教程 作者:凯鲁嘎吉 - 博客园http://www.cnblogs.com/kailugaji/ Ubuntu版本:Ubuntu-12.04.5-desktop-i386 ...

  3. Windows下安装MySQL详细教程

    Windows下安装MySQL详细教程 1.安装包下载  2.安装教程 (1)配置环境变量 (2)生成data文件 (3)安装MySQL (4)启动服务 (5)登录MySQL (6)查询用户密码 (7 ...

  4. npm安装vue详细教程(图片详解)

    npm安装vue详细教程(图片详解) 一.总结 一句话总结:整个安装流程照着教程来,注意系统环境变量的配置,注意一下npm的本地仓库和缓存位置 教程 系统环境变量 仓库 缓存 1.什么情况下最适合用n ...

  5. ubuntu安装scala详细教程

    ubuntu14 安装scala详细教程 1.下载scala压缩包 http://www.scala-lang.org/download/ 2.建立目录,解压文件到所建立目录 $ sudo mkdir ...

  6. Centos7安装Typecho详细教程

    Centos7安装Typecho详细教程   首先搭建LAMPH环境 L linux 服务器(centos或者ubunt) .A Apache .M mysql .P PHP 安装Apache.PHP ...

  7. Linux系统下Dubbo安装的详细教程

    Linux系统下Dubbo安装的详细教程 1.Dubbo的简介 Dubbo是 [1]  阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和 [ ...

  8. Windows安装Jenkins详细教程(图文教程)

    一.安装前准备 1.提前安装好jdk,可参考以下链接进行安装 Windows安装JDK详细教程(图文教程) 2.Jenkins官网下载安装包(因为本人jdk安装的是1.8,所以会和最新版jenkins ...

  9. Mysql安装的详细教程

    首先,针对本人最近几天各种电脑安装数据库失败,反思总结所有的方式.现写出详细教程,希望别的人少走弯路. 首先 这次内容分为如下几步 : 1.mysql之前安装的彻底清除 2.mysql版本的选取 3. ...

  10. Linux 安装 Tomcat 详细教程

    Linux 安装Tomcat详细步骤 1. 前往tomcat官网复制下载链接, tomcat官网地址:https://tomcat.apache.org/ 2. 进入到指定目录,使用 wget 命令下 ...

随机推荐

  1. strcmp函数实现及分析

    最近看C,看到strcmp函数,对它的实现原型不很清楚,于是到网上搜.网上算法一大堆,看了很多代码后自己做了一下总结 strcmp函数是C/C++中基本的函数,它对两个字符串进行比较,然后返回比较结果 ...

  2. python进度1

    Python 错误和异常 异常参数: 3.4与2.7有些不同 3.4中 try: x except NameError as e: print(type(e)) print(e) 运行结果: < ...

  3. PHP导出MySQL数据到Excel

    经常会碰到需要从数据库中导出数据到Excel文件,用一些开源的类库,比如PHPExcel,确实比较容易实现,但对大量数据的支持很不好,很容易到达PHP内存使用上限.这里的方法是利用fputcsv写CS ...

  4. Oracle 的 VKTM 进程 - virtual keeper of time

    在Oracle Database 11g中,VKTM是一个新增的后台进程.这个进程的含义是: VKTM (virtual keeper of time) is responsible for prov ...

  5. Intellij IDEA调试

    这段时间一直在使用Intellij IDEA, 今天把调试区工具的使用方法记录于此. 先编译好要调试的程序. 1.设置断点 选定要设置断点的代码行,在行号的区域后面单击鼠标左键即可. 2.开启调试会话 ...

  6. PowerShell 导出SharePoint管理中心解决方式

    PowerShell 导出SharePoint管理中心解决方式         SharePoint QQ群有人问能不能下载(导出)管理中心里的解决方式.由于在管理中心中点击解决方式会进入还有一个页面 ...

  7. BBC 生命大设计

    BBC霍金的生命的意义一视频中,有一段图案特别漂亮,于是我就写了一下,具体的繁殖规则是这样的:有存活体和死方格两个部分构成,我分别用 ' * ' 和 ‘  ’ 表示.当一个存活体周围有超过三个存活体时 ...

  8. 【web开发学习笔记】ibatis学习总结

    ibatis学习总结 ibatis数据库配置文件 <?xml version="1.0" encoding="UTF-8" ?> <!DOCT ...

  9. JAVA Metrics度量工具 - Metrics Core 翻译

    Metrics核心 翻译自Metrics官方文档: http://metrics.codahale.com/manual/core/ JAVA Metrics是一个用于度量的一个JAVA的类库,使用请 ...

  10. C++使用Json作为数据包装格式的通信

    出处:http://adebugger.cn/2009/11/cpp-json-data-communication/ http://hi.baidu.com/tibelf/item/6be2accd ...