Found exact match for libluajit: /usr/local/openresty/luajit/lib/libluajit-5.1.so.2.1.0
WARNING: Start tracing 6089 (/usr/local/openresty/nginx/sbin/nginx)
WARNING: Please wait for 2 seconds...
WARNING: user string copy fault -14 at 000000006369641a [man error::fault]
WARNING: Time's up. Quitting now...
WARNING: Found 124 JITted samples.
或者失败的情况:
WARNING: Start tracing 6089 (/usr/local/openresty/nginx/sbin/nginx)
WARNING: Please wait for 2 seconds...
WARNING: user string copy fault -14 at 000000006369641a [man error::fault]
WARNING: user string copy fault -14 at 0000000000000033 [man error::fault]
ERROR: MAXACTION exceeded near identifier 'tmp_level' at stapxx-I4qKsJvp/luajit.stp:565:21
WARNING: Number of errors: 1, skipped probes: 14
WARNING: /usr/local/bin/staprun exited with status: 1
Pass 5: run failed. [man error::pass5]
我是在进行压力测试的时候采样,nginx每个worker占用率在90% 以上,总cpu占用在80%, 今天采样2秒和1秒,-D MAXACTION=10000也是经常失败,
偶尔成功,上面的2s内124个样本是否正常? copy fault的原因是什么? 测试所用openresty我是通过rpm安装, 只有systemstap是手动编译,其依赖库是用过yum安装,是否都需要编译安装才能稳定采样?
在 2017年10月17日星期二 UTC+8上午3:21:56,agentzh写道:
Hello!
这明显是你采样得太久导致超过 systemtap 的 MAXACTION 阈值保护了。建议当 CPU 很高时,只采样一两秒试试。
当然,调大 MAXACTION 阈值也是一种办法,但不推荐,也没必要。
Regards,
Yichun