2

我正在尝试在 ubuntu 14.04 上为 node.js 应用程序生成火焰图。我使用了本指南(Brendan Gregg):http ://www.brendangregg.com/blog/2014-09-17/node-flame-graphs-on-linux.html 。

1) 我在 web 用户下运行我的 node.js 应用程序, --perf-basic-prof并看到它在 temp 文件夹中为该过程生成了一个性能映射文件。

2)一天后,我尝试使用以下命令生成火焰图本身:

$ sudo bash
# perf record -F 99 -p <node_process_id> -g -- sleep 30
# perf script > out.nodestacks01
# git clone --depth 1 http://github.com/brendangregg/FlameGraph
# cd FlameGraph
# ./stackcollapse-perf.pl < ../out.nodestacks01 | ./flamegraph.pl > ../out.nodestacks01.svg

它确实生成了一个火焰图,但它看起来很奇怪,条目很少,有些未知,而且看起来与代码中发生的事情相去甚远。

在此处输入图像描述

为什么会这样?我在这里想念什么?它是否与运行承诺或生成器的 node.js 相关(我非常怀疑)。可能是因为采样时间为 30 秒,而我的大部分活动发生在大约 4 小时前?我会得到什么样的火焰图?我需要做其他事情吗?

4

0 回答 0