Versions Compared
Key
- This line was added.
- This line was removed.
- Formatting was changed.
背景介绍
目前Opentelemtry
的Metrics
标准以及go
实现已经稳定,可以对接到框架中,以便框架组件对外暴露组件指标。
指标梳理
字段说明:注意事项
- 指标、属性命名使用
OpenTelemetry
规范。 - 在
OpenTelemetry
里面的属性,在Prometheus
里面叫做Label
。 - 由于
OpenTelemetry Metrics
里面的数据类型较多且复杂,框架参考Prometheus
的数据类型做了封装,简化使用。底层依旧使用OpenTelemery
规范。 - 指标值底层存储使用的是
float64
数据格式,因此在指标设计时指标值请尽量避免使用小数,以免出现精度问题。
字段说明
字段名称 | 字段说明 | ||
---|---|---|---|
指标名称 | 该名称将直接上报给存储端。默认使用 | 指标单位 | 用于定义该指标的单位,例如 |
指标类型 | 我们只用
| ||
Help信息 | 该信息和指标名称将直接上报给存储端,并在上层使用时做指标描述展示。 | ||
指标中文描述 | (可选)用于内部理解和维护该指标。 | ||
采集逻辑 | (可选)指标实现时按照该逻辑实现。 |
HTTP Server🔥
监控HTTP Server
的相关指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
HTTP Client🔥
监控HTTP Client
的相关指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
GRPC Server🔥
监控Grpc Server
的相关指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
GRPC Client🔥
监控GRPC Client
的相关指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
数据库ORM🔥
监控数据库服务的相关指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
数据库Redis
监控Redis
服务的相关指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
配置管理
监控gcfg
以及Adapter
实现的相关指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
缓存控制
监控gcache
以及Adapter
实现的相关指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
命令管理
监控gcmd
命令执行的指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
日志管理
监控glog
日志组件的指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
定时任务
分为两块。
gtimer
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
gcron
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
协程池
监控grpool
协程池指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
采集逻辑
Golang
Golang
的基础指标,依赖标准库runtime
,获取基础的运行时指标。
指标名称
指标单位
指标类型
Help信息
指标中文描述
| |
指标单位 | 用于定义该指标的单位,例如 |
Help信息 | 该信息和指标名称将直接上报给存储端,并在上层使用时做指标描述展示。 |
中文描述 | 用于内部理解和维护该指标。 |
公共属性
所有的指标都会自动注入这些公共的Label
,方便在多节点部署的进程或者分布式服务中做区分。
Label名称 | Label描述 | Label示例 |
---|---|---|
| 服务所在的主机节点名称。 | 本机 |
| 进程在当前系统上的的绝对路径。 |
|
文档列表
Children Display | ||||||
---|---|---|---|---|---|---|
|
参考链接
- https://opentelemetry.io/docs/specs/otel/metrics/data-model/
- https://github.com/open-telemetry/opentelemetry-go/tree/main/metric
- https://github.com/hertz-contrib/obs-opentelemetry/blob/main/README_CN.md
- https://www.cloudwego.io/zh/docs/hertz/tutorials/observability/open-telemetry/
Panel | ||||
---|---|---|---|---|
| ||||
|