安装可以查看PMM 源码的Go环境

本文涉及的产品
云数据库 MongoDB,通用型 2核4GB
简介: 安装可以查看PMM 源码的Go环境1.基础介绍最近在搭建PMM数据库监控系统,我们知道 Prometheus 是 PMM Server 的重要组件,*_exporter是PMM Client的主要组件。

安装可以查看PMM 源码的Go环境

1.基础介绍

最近在搭建PMM数据库监控系统,我们知道 Prometheus 是 PMM Server 的重要组件,*_exporter是PMM Client的主要组件。

归属组件 名称 作用

Server组件

Prometheus 一个开源的服务监控系统和时间序列数据库,它连接到PMM Client上的exporter聚集DB的监控数据。
Client组件 node_exporter Prometheus exporter用于搜集一般系统信息
mysqld_exporter Prometheus exporter用于搜集MySQL Server的信息
mongodb_exporter Prometheus exporter用于搜集MongoDB server的信息

为了更深入的学习和调整,有时候我们需要去看源代码,主要是Go语言。

2.基础环境安装

以mongodb_exporter为例,我们安装下基础环境。

step 1 下载 mongodb_exporter

当我们按照地址(https://github.com/percona/mongodb_exporter)去下载 mongodb_exporter。

 

Step 2 安装 VSCode,更容易阅读、调试代码。

 

Step 3 安装 go 安装包(https://golang.org/dl/,go1.12.windows-amd64.msi)。

 

step 4 为了更好的调试Go 代码,VSCode 还需要添加以下几个应用。

 

 此时就可以查看代码了。

 

 3.补充说明

 

但是分析代码时,看到部分代码需要引用其他的GitHub,例如 mongodb_collector.go 文件中的import,

 

 我们看到 github.com/prometheus/client_golang/prometheus 会被其他功能 调用的,如下

 

那么怎么才能,看到这个文件中的代码呢?

如果,直接输入网址,是获取不到的 404 错误。

解决方案。

我们先看看go的用法

 

其中 go get 可以获取 包或依赖 

 因此:

step 1 : 执行 下载命令

 go get github.com/prometheus/client_golang/prometheus

如图

 step 2 查看默认下载的路径 

go env GOPATH

如图:显示为 C:\Users\XXXX\go

step 3 登入路径 C:\Users\XXXX\go,在路径下的src文档中 查找

step 4  在VSCode 工具中,通过open file的形式,就可以加载打开此文件

 step 5 找到前面提到的方法定义( NewMongodbCollector 包含的prometheus.NewCounter的具体功能定义)

原文地址https://www.cnblogs.com/xuliuzai/p/10561073.html

相关实践学习
MongoDB数据库入门
MongoDB数据库入门实验。
快速掌握 MongoDB 数据库
本课程主要讲解MongoDB数据库的基本知识,包括MongoDB数据库的安装、配置、服务的启动、数据的CRUD操作函数使用、MongoDB索引的使用(唯一索引、地理索引、过期索引、全文索引等)、MapReduce操作实现、用户管理、Java对MongoDB的操作支持(基于2.x驱动与3.x驱动的完全讲解)。 通过学习此课程,读者将具备MongoDB数据库的开发能力,并且能够使用MongoDB进行项目开发。   相关的阿里云产品:云数据库 MongoDB版 云数据库MongoDB版支持ReplicaSet和Sharding两种部署架构,具备安全审计,时间点备份等多项企业能力。在互联网、物联网、游戏、金融等领域被广泛采用。 云数据库MongoDB版(ApsaraDB for MongoDB)完全兼容MongoDB协议,基于飞天分布式系统和高可靠存储引擎,提供多节点高可用架构、弹性扩容、容灾、备份回滚、性能优化等解决方案。 产品详情: https://www.aliyun.com/product/mongodb
相关文章
|
1月前
|
测试技术 API 开发者
【Docker项目实战】在Docker环境下部署go-file文件分享工具
【2月更文挑战第15天】在Docker环境下部署go-file文件分享工具
67 1
|
16天前
|
存储 测试技术 Go
掌握Go语言:深入探究Go语言中的命令源码文件与参数处理技巧(3)
掌握Go语言:深入探究Go语言中的命令源码文件与参数处理技巧(3)
|
5月前
|
存储 Cloud Native Go
Go语言 WaitGroup 源码知多少
Go语言 WaitGroup 源码知多少
|
1月前
|
测试技术 Go 云计算
Go语言优化云计算与容器化环境的策略与最佳实践
【2月更文挑战第15天】在云计算和容器化环境中,Go语言的应用和优化策略对于提高系统的性能和效率至关重要。本文深入探讨了如何使用Go语言优化云计算和容器化环境,包括内存管理、并发编程、代码优化等方面的最佳实践,旨在帮助开发者充分利用Go语言的优势,提升系统的整体性能。
|
1月前
|
Kubernetes Go 开发者
Go语言在容器化环境中的实践
【2月更文挑战第15天】随着容器技术的兴起,Go语言在容器化环境中的实践逐渐受到关注。本文探讨了Go语言如何与容器技术相结合,发挥其在容器化环境中的优势,包括轻量级部署、高并发处理、快速构建和部署等方面的特点,并通过实例展示了Go语言在容器化环境中的实践应用。
|
2月前
|
Go C语言
安装go-sqlite3包时报exec: "gcc": executable file not found in %PATH%解决办法
安装go-sqlite3包时报exec: "gcc": executable file not found in %PATH%解决办法
|
2月前
|
Unix Linux Go
开心档之 Go 语言环境安装
开心档之 Go 语言环境安装
|
3月前
|
Kubernetes Go 数据库
分享48个Go源码,总有一款适合您
分享48个Go源码,总有一款适合您
50 0
|
3月前
|
Go
go语言安装及其环境配置
go语言安装及其环境配置
38 0
|
3月前
|
Linux Go
Centos 7安装Go语言环境
Centos 7安装Go语言环境
22 0