Go语言进阶(十七)指标监控

指标监控

监控

Monitoring:

  • 延迟、流量、错误、饱和度
  • 长尾问题
  • 依赖资源 (Client/Server ‘s view)

opentracing (Google Dapper):

  • jaeger
  • zipkin

Logging:

  • traceid关联

Metric:

  • Prometheus + Grafana

涉及到 net、cache、db、rpc 等资源类型的基础库,首先监控维度4个黄金指标:

  • 延迟(耗时,需要区分正常还是异常)
  • 流量(需要覆盖来源,即:caller)
  • 错误(覆盖错误码或者 HTTP Status Code)
  • 饱和度(服务容量有多“满”)

系统层面:

  • CPU,Memory,IO,Network,TCP/IP 状态等,FD(等其他),Kernel:Context Switch
  • Runtime:各类 GC、Mem 内部状态等

image-20211227144543621

  • 线上打开 Profiling 的端口;
  • 使用服务发现找到节点信息,以及提供快捷的方式快速可以 WEB 化查看进程的 Profiling 信息(火焰图等);
  • watchdog,使用内存、CPU 等信号量触发自动采集;

image-20211227144615985

image-20211227144619994