Xdebug探查器输出文件

时间:2017-06-07 14:18:50

标签: php xdebug kcachegrind xdebug-profiler

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

1 个答案:

答案 0 :(得分:2)

使用默认配置,xdebug为每个PID创建一个文件。

当您使用ajax调用对网站进行概要分析时,浏览器将发出多个请求,这些请求可能由您的网络服务器的不同PID /实例处理,因此您可以获得多个文件。

你可以查看你的php.ini。有多个xdebug设置来控制分析数据的存储方式。例如:

  

<强> xdebug.profiler_aggregate:   类型:整数,默认值:0当此设置设置为1时,a   将为多个请求编写单个探查器文件。一罐   浏览多个页面或重新加载页面以获得所有页面的平均值   要求。该文件将命名为.cachegrind.aggregate。你会需要   移动此文件以获取另一轮汇总数据。

     

<强> xdebug.profiler_append:   类型:整数,默认值:0当此设置设置为1时,   新请求映射到的时,不会覆盖探查器文件   相同的文件(取决于xdebug.profiler_output_name设置。   相反,该文件将附加到新的配置文件。

     

<强> xdebug.profiler_output_name   类型:字符串,默认值:   cachegrind.out。%P

     

此设置确定用于转储的文件的名称   追踪到。该设置指定格式说明符的格式,   与sprintf()和strftime()非常相似。有几种格式   可用于格式化文件名的说明符。

xdebug documentation

中查看更多内容

另一种选择是使用File/Add menu in KCachegrind

  

将配置文件数据文件添加到当前窗口。通过这个,你可以强迫   即使多个数据文件也要加载到同一个顶层窗口中   它们不是来自配置文件数据文件给出的相同运行   命名惯例。