首页 > 系统相关 >xhprof nginx配置的预加载代码

xhprof nginx配置的预加载代码

时间:2024-08-29 11:07:39浏览次数:12  
标签:function LIB nginx wt DEBUG xhprof data 加载

<?php
//var_dump(function_exists("register_shutdown_function"));
//根据参数控制是否开启xhprof

if ((rand(1, 100) >= 1 || !empty($_GET['xhprof'])) && PHP_SAPI != 'cli' && function_exists('xhprof_enable')) { //(rand(1, 100) 控制采样率


    !defined('DEBUG_LIB') && define("DEBUG_LIB", "/data/www/xhprof/xhprof_lib"); //根据你存放的目录修改
    include_once DEBUG_LIB . "/utils/xhprof_lib.php";
    include_once DEBUG_LIB . "/utils/xhprof_runs.php";
    xhprof_enable(XHPROF_FLAGS_NO_BUILTINS + XHPROF_FLAGS_CPU + XHPROF_FLAGS_MEMORY);

    register_shutdown_function(function() {
        //stop profiler
        if (!function_exists("xhprof_disable")) {
            return ;
        }
        $xhprof_data = xhprof_disable();
        $wt          = isset($xhprof_data['main()']['wt']) ? $xhprof_data['main()']['wt'] : 0;
        $client_id   = empty($_SERVER['HTTP_X_AKAM_CLIENTID']) ? '' : $_SERVER['HTTP_X_AKAM_CLIENTID'];
        if ($wt <= 2000000 && empty($_GET['xhprof'])) {
            return ;
        }
        //冲刷(flush)所有响应的数据给客户端
        $xhprof_runs = new XHProfRuns_Default();
        //save the run under a namespace "xhprof_foo"
        $uri = $_GET['xhprof'] . '-' . $client_id . '-wt:' . round($wt * 0.001) . '-' . $_SERVER['HTTP_HOST'] . $_SERVER['PATH_INFO'];
        $uri = str_replace(['/', '.', '\\', '|'], '_', $uri);
        $xhprof_runs->save_run($xhprof_data, $uri);
    });



}

  

标签:function,LIB,nginx,wt,DEBUG,xhprof,data,加载
From: https://www.cnblogs.com/jinshao/p/14103131.html

相关文章

  • nginx rewrite模块之if和return
    ngx_http_rewrite_module将用户请求的URI基于PCREregex所描述的模式进行检查,而后完成重定向替换 if:Syntax: if(condition){...}Default: —Context: server,location条件满足时,执行配置块中的配置指令condition:比较操作符: =相同!=不同 ......
  • nginx之http跳转https
    http跳转https实现示例:ssl配置参考“https”实现文章法一:2个虚拟主机配置:[[email protected]]#vim/apps/nginx4/conf/conf.d/test.confserver{listen443ssl;#listen80;server_namewww.magedu.org;root/data/site14/;......
  • nginx rewrite模块之rewrite
    未完成ngx_http_rewrite_module rewriteregexreplacement[flag]将用户请求的URI基于regex所描述的模式进行检查,匹配到时将其替换为replacement指定的新的URI注意:如果在同一级配置块中存在多个rewrite规则,那么会自下而下逐个检查;被某条件规则替换完成后,会重新一轮......
  • nginx之错误url重定向到首页
    nginx之错误url重定向到首页1、配置:[[email protected]~]#vitest.confserver{listen443ssl;listen80;server_namewww.magedu.org;root/data/site14/;#sslon;ssl_certificate/apps/nginx4/ssl/magedu.org.crt;......
  • nginx扩展之支持多个ssl加密虚拟主机
    nginx支持一台服务器唯一IP:PORT,根据server_name创建区分多个经过ssl加密的https虚拟主机,apache不支持 生成www.magedu.net域名证书:[[email protected]]#cd/etc/pki/tls/certs/[[email protected]]#vimMakefile%.key:umask77;\#/usr/bin/ope......
  • nginx共享资源站点
    配置nginx文件下载服务模块:ngx_http_autoindex_module常用指令:autoindexon|off;自动文件索引功能,默为offDefault: autoindexoff;Context: http,server,locationautoindex_exact_sizeon|off;计算文件确切大小(单位bytes),off显示大概大小(单位K、M),默......
  • nginx基于用户的访问控制
    ngx_http_auth_basic_module模块 实现基于用户的访问控制,使用basic机制进行用户认证auth_basicstring|off;auth_basic_user_filefile;Default: —Context: http,server,location,limit_exceptlocation/admin/{ auth_basic"AdminArea"......
  • nginx日志格式
    ngx_http_log_modulengx_http_log_module模块指定日志格式记录请求log_formatnamestring...;string可以使用nginx核心模块及其它模块内嵌的变量Default:log_formatcombined"...";Context: httpaccess_logpath[format[buffer=size][gzip[=level]......
  • nginx第三方模块echo和变量
    第三方模块:echo第三模块是对nginx的功能扩展,第三方模块需要在编译安装nginx的时候使用参数--add-module=PATH指定路径添加,有的模块是由公司的开发人员针对业务需求定制开发的,有的模块是开源爱好者开发好之后上传到github进行开源的模块,nginx支持第三方模块,需要重新编译源码......
  • nginx输出nginx的基本状态信息
    输出nginx的基本状态信息模块:ngx_http_stub_status_module输出信息示例:Activeconnections:291server   accepts  handled  requests#下面三个数分别对应accepts,handled,requests      166309481663094831070465Reading:6Writing:179Wait......