问题标签 [debug-backtrace]

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 回答
234 浏览

php - PHP,自动SQL注释,数据库调试哪个文件和哪行调用了sql

我们有一个大型 php 应用程序并尝试调试慢速 sql 查询,我们希望能够自动注释实际调用 sql 查询的文件,例如:

/* filename.php line 234*/ 是动态插入的。大概

在php中有一个debug_backtrace,http ://php.net/manual/en/function.debug-print-backtrace.php

哪个可以手动完成:

但希望有一些更核心的东西,比如数据库驱动程序。

MediaWiki 也有类似的功能。 http://www.mediawiki.org/wiki/Manual:How_to_debug

PDO 驱动程序有一个转储语句,但这只是查询,而不是谁调用它 http://php.net/manual/en/pdostatement.debugdumpparams.php

您如何在运行它的 php 页面的上下文中最好地调试 sql?

0 投票
1 回答
541 浏览

c - 回溯日志中的堆栈帧 NULL

我的应用程序收到分段错误。回溯日志——

堆栈帧#9很有趣。它的地址是0x0000000000000000。这是否意味着堆栈甚至在到达之前就已损坏engine_unlocked_finish ()

0 投票
0 回答
62 浏览

php - debug_backtrace() 在输出缓冲回调中失败

最近,一个应用程序在随机执行点回显了某些内容。找到确切的陈述原来是一个问题:太多的陈述发出了东西。

因此,我通过ob_start()注册了一个回调,让回调回显 debug_backtrace()并退出应用程序。

请注意,我试图禁用输出缓冲作为回调的第一条语句。

不幸的是,debug_backtrace()从来没有返回任何东西。该应用程序在回调中调用debug_backtrace()时崩溃。

我什至没有设法将 debug_backtrace() 的内容保存到文件中(而不是标准输出)。

有人可以解释为什么吗?

0 投票
0 回答
158 浏览

php - PHP回溯转储无限字符串

我正在调试一个奇怪的错误,以诊断一个未正确执行的简单 PHP 函数。功能本身不是问题。当我使用 debug_print_backtrace() 运行回溯时,它只是不停地打印和打印。回溯应该像这样执行吗?

该站点本身是 Opencart v1.5.4.1,托管在运行 CentOS 最新版本的专用 Linux 机器上。为了正确诊断,我还需要提供什么?我以前没有遇到过这样的事情,因此非常困惑,不知道该去哪里。谷歌搜索没有提供任何清晰的方式。有任何想法吗?

0 投票
0 回答
564 浏览

php - debug_backtrace() 中的 Apache/PHP 分段错误

在 Drupal 项目中执行特定操作时,PHP 崩溃。在/var/log/apache2/error.log中,我可以看到:

[Wed Jul 08 09:51:13.068078 2015] [core:notice] [pid 9130] AH00051: child pid 9135 exit signal Segmentation fault (11), /etc/apache2 中可能的核心转储

使用xdebug.auto_trace=On,我已经能够确定在debug_backtrace()调用时发生崩溃(而不是每次)。

我设法得到一个核心转储。这是我在运行时得到的sudo gdb /usr/sbin/apache2 /tmp/coredumps/core-apache2.9135

程序因信号 SIGSEGV、分段错误而终止。
#0 0x00007f12e1c7422a in zend_std_object_get_class_name () from /usr/lib/apache2/modules/libphp5.so

我可以做些什么来进一步解决问题?

0 投票
1 回答
4459 浏览

php - PHP-FPM 段错误 6

我有 php5-fpm 的问题。很多时候,它会出现段错误并阻塞整个 php 处理,因此无法向客户端提供任何答案。对我来说,回溯看起来像一个无限循环,但我看不出它是由脚本还是内部 php 模块引起的。

有没有机会看到涉及哪个脚本/模块?

Segfault 总是这样(dmesg 输出):

PHP版本:

Coredump 的回溯:

回溯获取文件名:

已安装的软件包:

0 投票
1 回答
61 浏览

php - PHP 是我从 echo 或 sprintf 调用的函数

我想看看函数在哪里被调用。

该函数是在 echo 还是 sprintf 中调用的?然后返回,否则回显内容。

我得到了这段代码(test.php):

当我在终端输入它时,我得到的是:

(来自网络的ps相同)

我的 PHP 版本是:

0 投票
1 回答
277 浏览

php - 可以将 debug_backtrace 作为非调试功能的一部分吗?

我仅在从特定父级(或祖父级函数,或曾祖父级等)调用函数时才尝试执行该函数。我可以使用 debug_backtrace 实现我想做的事情,但我觉得这不是正确的方法。以此为例:

这是在 Wordpress 函数中使用回溯来执行 set_post_format 函数,仅当从 bulk_edit_posts 函数调用 savethepost 函数时,这是我试图实现的。但是既然这个方法是用来调试的,那么这样用可以吗?如果没有,如果仅来自某个父函数,我还能如何实现调用函数?

0 投票
1 回答
86 浏览

gdb - gdb backtrace 如何知道每个函数取自哪个库?

我编写了一个简单的程序,它所做的只是调用一个名为 meller1 的函数,该函数调用 meller2,依此类推,直到某个函数调用空闲并崩溃。当使用 coredump 文件在该程序上运行 gdb 回溯时,我收到:

gdb BT

我的问题是,gdb bt 怎么知道 free 是取自 /lib/libc.so.6 的?给定一个Coredump文件和可执行文件本身,有没有一种我可以自己做的手动方式?谢谢。

0 投票
1 回答
476 浏览

php - php debug_backtrace() 将结果中包含一些对象的字符串

我想在 __set 函数中使用 debug_backtrace() 调试应用程序。

因为我需要它作为字符串,所以我尝试了它$myStringVar = print_r(debug_backtrace(),true);

但这不起作用。我发现我的数组中有一些对象 debug_backtrace() 返回。

所以我必须以另一种方式将其转换为忽略对象的字符串。

但是如何做到这一点?