-
Notifications
You must be signed in to change notification settings - Fork 136
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
cpu 突然飙高的一下触发了dump操作,但是dump下来的文件使用 go tool pprof 分析文件,好像什么都分析不出来 #123
Comments
可以用文本格式的输出看一下
ps: |
这个是线上容器正在跑的程序,不太好给出demo 也是偶发现象。。。。 |
明白了。 |
服务启动一段时间后报出来的,而且是不太稳定的偶发现象,我们看下先调整参数处理。 |
这就是标准的pprof文件,dump的是cpu高那一会的快照。可以看下cpu占用情况,然后和正常的pprof对比一下 来看是哪里增高了 |
是标准的 profile文件,但是profile里没有sample。是不是不太正常。 |
感觉不太正常,profile文件能分享么 |
这个 profile 文件里,完全没有采样的数据,难道是飙升之后, CPU 跌到几乎为 0 了? holmes 的逻辑是,飙升之后,会触发采样,采样时长为 5s 只是你这个文件里,一点数据都没有,比较怀疑是,CPU 跌到几乎为 0 了 |
就算异常消失了,应该还有在运行的函数,除非这些函数运行很快,无法以默认的频率(100hz)捕获到它们。 |
我们的容器cpu监控并没有异常,所以现在不太清楚是holmes采集的问题,还是我们监控的问题。 |
所以,这里说的是两个问题:
|
你们的监控,有秒级的数据么?如果是分钟级的平均数据,通常是看不出来异常的 |
#123 (comment) |
代码:
h, err := holmes.New(
holmes.WithProfileReporter(r),
holmes.WithCollectInterval("30s"),
holmes.WithDumpPath(pprofDumpPath),
holmes.WithLogger(holmes.NewFileLog(holmesLogFilePath, mlog.INFO)),
holmes.WithCPUDump(30, 50,60, time.Minute),
holmes.WithCPUMax(90),
holmes.WithCGroup(true),
)
h.EnableCPUDump()
holmes log
pprof_file
看起来感觉cpu突然飙高了一下,然后又正常了,是采集周期或者参数设置的问题吗
The text was updated successfully, but these errors were encountered: