问题标签 [xdebug-profiler]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
293 浏览

php - php-fpm 访问日志请求时间和 xdebug 时间不匹配

php-fpm 访问日志请求时间和 xdebug 时间不匹配。

为什么 xdebug 分析显示 100ms 的请求和 php-fpm 访问日志显示 700ms+ 7x 甚至更多的差异?

xdebug 是否在途中丢失/跳过了某些东西,或者 fpm 在实际的 php 处理之间做些什么?

Xdebug 日志记录自动加载/包含/需要计时?数据库连接等?

有没有办法更深入地了解 php-fpm 登录 access.log 的时间?

0 投票
0 回答
158 浏览

php - xdebug 跟踪文件中需要时间戳

我已经在我的应用程序中配置了 xdebug,并且在跟踪日志中得到了以下数据。

我想知道调用特定函数时的数据。或者我需要每行中的时间戳字段。

我在谷歌上搜索过这个但没有运气。

有人可以有任何想法天气是否可以使用 xdebug?

在此处输入图像描述

0 投票
1 回答
251 浏览

php - 简单执行时间检查的结果与 Xdebug 分析结果相矛盾

我有一个非常昂贵的方法removeColumns(...),此外还被多次调用。所以我想提高它的性能。为了分析优化结果,我使用了两个工具:(1)带有Webgrind的Xdebug Profiler和 (2) 一个简单的执行时间测量脚本(在 PHPUnit 测试方法中的命令行上执行):

但现在我正在查看结果——我看到,两者的结果绝对是彼此相反的。

执行时间测量脚本的结果是:

如您所见,优化失败。当方法被不经常调用时,性能会变得更好,但调用越多,性能就越差(非线性,最多调用900%性能损失100.000)。

现在让我们看看 Xdebug Profiler 的结果:

所以这里改进的变体 (23) 的性能是/似乎明显好于variant 1.

这里有什么问题以及如何解决它以获得足够的性能测试结果?


我正在优化该方法的所有三种变体:

变体 1

变体 2

变体 3

0 投票
1 回答
1012 浏览

php - qcachegrind 错误:未知的文件格式。从 php xdebug 生成的文件

我正在尝试使用 xdebug 来分析用 php7 编写的应用程序。

我编写了一个设置以下ini设置的脚本:

正如我所料,运行脚本创建了 cachegrind 文件:

这是 cachegrind 文件的前几行,以便格式可见:

但是,当我尝试在 中打开此文件时qcachegrind,它无法打开:

在此处输入图像描述

错误消息显示:“加载错误/path/to/cachegrind/file:未知文件格式

有人知道这里发生了什么吗?我希望能够使用这样的工具来分析我的应用程序。

我还花了 30 美元尝试在MCG中打开文件,但该应用程序在打开任何这些文件后立即崩溃。

附带说明一下,该文件相当大,但没有大到我希望应用程序吓坏的程度:

0 投票
1 回答
217 浏览

php - var_dump() 和 print_r() 输出不同的值

我运行这段代码:

我得到这个输出: 在此处输入图像描述

我运行这段代码:

我得到这个输出: 在此处输入图像描述

为什么不能print_r()var_dump()案例 1 中的 $test 值达成一致?

有关我如何到达这里的背景信息。我正在运行一个 laravel/homestead vm 盒子,并且我正在使用 Browsersync。Browsersync 创建了一个localhost:3000我连接的代理 (),它指向 laravel/homestead vm ( 192.168.10.10)。Host当请求通过代理时,代理会更改标头的值。

0 投票
0 回答
37 浏览

php - 我的 Web 请求花费的时间比 XDebug 日志显示的要长

我正在开发一个性能不佳的 PHP/MySql 网站。我试图弄清浪费时间的地方。Web 请求需要 13 秒。

如果我使用 chrome 网络选项卡或提琴手,99% 的时间都花在“等待”上,所以这没有帮助。

我已经安装了 XDebug 并临时打开了分析来调试这个问题。我正在分析 WinCacheGrind 中的日志,其中指出请求总共需要 1.5 秒。

我还可以在哪里查看以及如何计算出花费最多时间的内容?

提前致谢!

0 投票
0 回答
580 浏览

php - Xdebug-profiler 和 Xdebug-tracer 的区别

Xdebug profiler 和 tracer 有什么区别?有吗?

我知道它们有不同的设置,但我想知道它们在功能方面的区别。

0 投票
1 回答
370 浏览

php - XDebug 不分析 POST

如何配置 XDebug 来分析所有请求、POST、GET、Ajax,有和没有查询字符串参数?

当前配置(如下)仅为没有查询字符串参数的 GET 请求和 POST 请求创建配置文件 (cachegrind.out) 文件。

/etc/php5/apache2/conf.d/20-xdebug.ini

conf.d/my.conf

Ubuntu 14.04.5 LTS

PHP 版本 5.5.9-1ubuntu4.21

XDebug 2.5.1 版

0 投票
1 回答
2627 浏览

php - Xdebug 探查器输出文件

X 调试将输出作为部分返回,而不仅仅是一个文件。我正在使用 ubuntu 16,不知道为什么突然输出在几个文件中。我遇到的问题是我无法在 Kcachegrind 中打开这些文件,因为输出在单独的文件中有不同的部分。任何人?提前致谢

0 投票
1 回答
1538 浏览

php - Xdebug Profiler 无法在 apache 上工作

问题是如果我通过浏览器从我的服务器请求任何页面,我不会从 Xdebug-Profiler 获得任何输出。如果我在终端中使用 php 调用脚本,例如

然后将创建分析器的输出。所以我想我的配置很好。这是我的 phpinfo 中的重要设置:

我的 phpinfo 的https://xdebug.org/wizard.php的输出:

p>

我在这里阅读了很多主题,人们有类似的问题,而且通常是权利问题。因此,我在我的主目录中创建了 profiler 文件夹,其权限如下:

服务器在 Centos 7 上运行,SELinux 被禁用。Xdebug 调试器工作正常。任何帮助将不胜感激。