问题标签 [strace]

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 投票
9 回答
113008 浏览

windows - Windows 系统跟踪

我正在寻找 Windows 等效的Systrace或至少strace。我知道 StraceNT,但想知道是否还有其他选择。具体来说,我正在寻找一种以编程方式强制执行系统调用策略的特定方法,尽管这可能是事后而不是主动阻止它们。

目前有没有好的方法来做到这一点?

0 投票
2 回答
3192 浏览

linux - 如何在linux中获取进程的进程树跟踪/日志?

我想知道脚本启动了哪些可执行文件以及以什么顺序启动(并递归地跟踪这些可执行文件)。

例如,假设我在这里有一个 bash 脚本(称为 abc.sh):

我想用“trace/log command”运行这个脚本并得到这样的东西:

这表明 abc.sh 调用了 ls 和 gcc。gcc 反过来又称为 cpp 和 cc1。

这可能吗?我该怎么做?像上面这样的树视图会很好,但更简单的视图也可以。

请注意,我不想要进程树的当前快照。相反,我想要生成过程的跟踪或日志。时间注释也很有用。

谢谢!

0 投票
4 回答
99706 浏览

linux - 如何使用 strace 跟踪子进程?

我曾经strace简单地附加到一个进程。该进程创建了 90 个线程。当我找到有问题的线程时,我不得不繁琐地搜索父线程,然后是祖父线程,依此类推,一直到根进程。

是否有技巧或工具可以快速找出哪个线程创建了另一个线程?或者更好的是,打印线程创建树,例如pstree

0 投票
1 回答
378 浏览

c - 将自定义文本打印到 strace 中。跟踪评论

我们经常使用 strace。我们想将一些文本输出到 strace 以标记代码到达的位置。到目前为止,我看到人们这样做的方式是统计一个不存在的文件。文件名就是他们想在 strace 中看到的文本。它非常快,但我相信有更好的方法。我担心即使挂载点是虚假的,也可能会有很多代码和内核锁被命中。有任何想法吗?

0 投票
1 回答
9107 浏览

debugging - 如何使用 strace 仅显示需要大量时间的调用?

有没有办法 grep 只在一定时间内调用?

0 投票
2 回答
473 浏览

c++ - strace:在任何事情发生之前的 SIGFPE

我在特定机器上执行 C++ 程序时遇到问题。这是整个 strace 输出:

我已经在其他几台机器上安装并运行了这个可执行文件,没有任何问题(并且有数千行 strace 输出)。知道什么可能导致我的问题吗?谢谢。

0 投票
2 回答
3524 浏览

android - 真实设备中的 Android strace

我有以下情况,我想监控 Android 手机上的系统调用,所以我编写了一个脚本来做到这一点。使用 Android Emulator 可以完美运行(在我的 Ubuntu 上的特定文件中写入应用程序的痕迹)。问题是当我附加一个真实的手机来分析它时,它在结果文件中显示以下内容:

我正在使用此代码来获取它,但我不明白为什么它可以在模拟器上运行,而不是在有根的真实设备中运行。

这是我在 perl 中使用的命令:

有什么建议吗?提前致谢

0 投票
3 回答
5188 浏览

android - Android ADB Linux 问题

我正在尝试在 Android Real 设备中测试 Strace 工具,但我无法从中获取任何信息。我正在尝试以下命令,但设备仍然告诉我“权限被拒绝”。

我试图以这种方式拆分命令并使其分两次,它可以工作

我试图以这种方式放置以前的代码,以使其安全但仍然无法正常工作:

我做错了什么?提前致谢

0 投票
3 回答
7762 浏览

memory - 识别导致 strace 挂起的文件

我有一个在 Ubuntu 10.04 上运行的 GTK 程序,它以可中断状态挂起,我想了解strace. 特别是,我有这一行:

我怀疑5是文件描述符,要读取的0x2ba9ac4文件中的地址以及要读取4096的数据量。你确定吗?更重要的是,如何确定程序试图读取哪个文件?这个文件描述符不存在/proc/pid/fd(这可能是程序挂起的原因)。

0 投票
2 回答
1648 浏览

linux - 如何知道哪个函数正在调用系统调用?

我使用 strace 跟踪我的应用程序,发现它在系统调用“轮询”时被阻塞,我想弄清楚哪个函数正在调用这个系统调用。如何?</p>