go 能够通过 github.com/prometheus/client_golang 所提供的 api 给 prometheus 裸露一指标信息,prometheus 通过采集这些指标达到对应用服务的监控记录、告警等操作。
Gin 框架引入:
func main () {r := mux.NewRouter()
// prometheus metrics
r.Handle("/metrics", promhttp.Handler())
http.ListenAndServe(":8082", r)
}
指标对应含意:
metrics | 含意 |
---|---|
go_gc_duration_seconds | 持续时间秒 |
go_gc_duration_seconds_sum | gc- 持续时间 - 秒数 - 总和 |
go_memstats_alloc_bytes | Go 内存统计调配字节 |
go_memstats_alloc_bytes_total | Go 内存统计调配字节总数 |
go_memstats_buck_hash_sys_bytes | 用于分析桶散列表的堆空间字节 |
go_memstats_frees_total | 内存开释统计 |
go_memstats_gc_cpu_fraction | 垃圾回收占用服务 CPU 工作的工夫总和 |
go_memstats_gc_sys_bytes | 圾回收标记元信息应用的内存字节 |
go_memstats_heap_alloc_bytes | 服务调配的堆内存字节数 |
go_memstats_heap_idle_bytes | 申请然而未调配的堆内存或者回收了的堆内存(闲暇)字节数 |
go_memstats_heap_inuse_bytes | 正在应用的堆内存字节数 |
go_memstats_heap_objects | 堆内存块申请的量 |
go_memstats_heap_released_bytes | 返回给 OS 的堆内存 |
go_memstats_heap_sys_bytes | 零碎调配的作为运行栈的内存 |
go_memstats_last_gc_time_seconds | 持续时间秒 |
go_gc_duration_seconds | 垃圾回收器最初一次执行工夫 |
go_memstats_lookups_total | 被 runtime 监督的指针数 |
go_memstats_mallocs_total | 服务 malloc 的次数 |
go_memstats_mcache_inuse_bytes | mcache 构造体申请的字节数 (不会被视为垃圾回收) |
go_memstats_mcache_inuse_bytes | mcache 构造体申请的字节数 (不会被视为垃圾回收) |
go_memstats_mcache_sys_bytes | 操作系统申请的堆空间用于 mcache 的字节数 |
go_memstats_mspan_inuse_bytes | 用于测试用的构造体应用的字节数 |
go_memstats_next_gc_bytes | 垃圾回收器检视的内存大小 |
go_memstats_other_sys_bytes | golang 零碎架构占用的额定空间 |
go_memstats_stack_inuse_bytes | 正在应用的栈字节数 |
go_memstats_stack_sys_bytes | 零碎调配的作为运行栈的内存 |
go_memstats_sys_bytes | 服务当初零碎应用的内 |
go_threads | 线程 |
go_goroutines | 协程数量 |
go_info | go 编译器版本 |
process_cpu_seconds_total | 过程用户和零碎 CPU 总工夫(以秒为单位)。 |
process_max_fds | 过程关上文件描述符的最大数量。 |
process_open_fds | 过程关上文件描述符的数量。 |
process_resident_memory_bytes | 过程驻留内存大小(以字节为单位)。 |
process_start_time_seconds | 过程的开始工夫,以秒为单位(工夫戳)。 |
process_virtual_memory_bytes | 过程以字节为单位的虚拟内存大小。 |
process_virtual_memory_max_bytes | 可用的最大虚拟内存量(以字节为单位)。 |
promhttp_metric_handler_requests_in_flight | 以后提供的抓取次数。 |
promhttp_metric_handler_requests_total | 按 HTTP 状态代码的抓取总数。 |