安装可以查看PMM 源码的Go环境
安装可以查看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的具体功能定义)
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
从零开始学习JAVA多线程(二)
从零开始学习JAVA多线程(二)前面已经简单介绍进程和线程,为后续学习做铺垫。本文讨论多线程传参,Java多线程异常处理机制。 多线程的参数传递 在传统开发过程中,我们习惯在调用函数时,将所需的参数传入其中,通过函数内部逻辑处理返回结果,大多情况下,整个过程均是由一条线程执行,排除运行不必要的的偶发性,似乎并不会出现意料之外的结果。而在多线程环境下,在使用线程时需要对线程进行一些必要的初始化,线程对这些数据进行处理后返回结果,由于线程的运行和结束并不可控,线程传参变得复杂起来,本文就以上问题介绍三种常用的传递参数方式。 (一)构造方法传参 在创建线程时,需要创建一个Thread类的或者其子类的实例,通过调用其start()方法执行run()方法中的代码块,在此之前,我们可以通过构造函数传递线程运行所需要的数据,并使用变量保存起来。代码如下: 复制代码 1 public class MyThread extends Thread { 2 3 //定义变量保存参数 4 private String msg; 5 6 public MyThread() { 7 } 8 9 public My...
- 下一篇
深入理解 JavaScript 执行上下文和执行栈
作者:浪里行舟 Fundebug经授权转载,版权归原作者所有。 前言 如果你是一名 JavaScript 开发者,或者想要成为一名 JavaScript 开发者,那么你必须知道 JavaScript 程序内部的执行机制。执行上下文和执行栈是 JavaScript 中关键概念之一,是 JavaScript 难点之一。 理解执行上下文和执行栈同样有助于理解其他的 JavaScript 概念如提升机制、作用域和闭包等。本文尽可能用通俗易懂的方式来介绍这些概念。 一、执行上下文(Execution Context) 1. 什么是执行上下文 简而言之,执行上下文就是当前 JavaScript 代码被解析和执行时所在环境的抽象概念, JavaScript 中运行任何的代码都是在执行上下文中运行 2. 执行上下文的类型 执行上下文总共有三种类型: 全局执行上下文: 这是默认的、最基础的执行上下文。不在任何函数中的代码都位于全局执行上下文中。它做了两件事:1. 创建一个全局对象,在浏览器中这个全局对象就是 window 对象。2. 将 this 指针指向这个全局对象。一个程序中只能存在一个全局执行上下...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Mario游戏-低调大师作品
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16
- CentOS8编译安装MySQL8.0.19
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7