2
我们使用Xdebug的和代码执行通过在追踪像宣传的那样..如何通过xdebug中的api调用获取堆栈跟踪?
function someGetUsersHelper() {
xdebug_start_trace();
[SOME CODE HERE]
xdebug_stop_trace();
}
如果网页/脚本通过加载全部执行然而它仅跟踪代码的部分包裹通过请求
index.php
但跟踪在浏览器页面无法正常工作,当我们通过
调用该函数作为一个API调用index.php?api=getUsers
即使成功执行了相同的功能,它也不会跟踪。
作为附加说明:如果函数是从phpunit测试用例中调用,或者如果我们在php.ini中设置了xdebug.auto_trace = 1,但是这给我们留下了一个很长的乱糟糟的跟踪文件,跟踪也可以使用。
所以,问题是这样的:
- 可能是什么问题/原因以及我们如何设法让通过调用API的 所需的清晰,简洁的痕迹?
非常感谢!
您好托马斯,感谢您的回复。听起来很不错,但我在php.ini中找不到一个xdebug.trace_enable_trigger参数。你使用的是哪个版本的xdebug - 我只有一个xdebug.profiler_enable_trigger设置。 – Bruiser
我正在使用Xdebug 2.1.1。如果它尚不在您的配置中,您可以尝试添加此参数。在某些发行版中,默认参数未在配置文件中列出 –
根据[changelog](http://xdebug.org/updates.php),在2.2.0中添加了“xdebug.trace_enable_trigger” – Znarkus