1
JeromeCui 2020-10-23 10:20:49 +08:00
我就会一招:打印日志
|
3
lcode 2020-10-23 10:38:49 +08:00
测试环境模拟一下
不能复现的 bug 就不是 bug ( |
4
zunceng 2020-10-23 10:45:31 +08:00 1
http 框架里面集成一个 pprof 中间件 做好了以后一行代码就好了 如果是 gin 直接用下面的
https://github.com/gin-contrib/pprof |
5
monsterxx03 2020-10-23 10:50:16 +08:00
|
6
polythene 2020-10-23 10:52:19 +08:00
Linux 下的 perf 能直接读取 Go 进程的符号值
|
7
TypeErrorNone 2020-10-23 10:56:02 +08:00
@zunceng 如果有几十个容器,怎么搞呢
|
8
airplayxcom 2020-10-23 11:15:12 +08:00
|
9
kiddingU 2020-10-23 11:47:17 +08:00
opentracing 可以定位到是链路中哪个函数慢,然后再去优化
|
10
Lonenso 2020-10-23 12:20:04 +08:00 via Android
|
11
Leigg 2020-10-23 12:27:06 +08:00 via Android
你不能确定函数范围?没上链路追踪就自己挨个打日志
|
12
zunceng 2020-10-23 13:17:16 +08:00
@TypeErrorNone 一般来说不会把这个接口暴露出去 想个办法内部访问
如果程序部署在 k8s kubectl run my-shell --rm -i --tty --image golang -- sh > go tools pprof http://${pod_name}/debug/pprof/heap 在生产创建 pod 的权限非常高 对权限管控有要求的企业 可以把这一套做成一个线上的调试工具 web 方式提供给内部人员使用 |