note:本人周五开始接触promethuse,周一上班就开始搭环境和配置监控,其实本人对这三个东西根本就是略知一二,但是,我预测感觉过程还是简单的,结果。。。

首先把过程和遇到的问题一一说明。

1.安装promethuse

2.安装go环境

3.安装grafana

  前三步直接去官网看如何安装,过程也都很简单,特别低,对于go语言,需要翻墙哦。

4.安装promethuse 采集信息插件 mongodb_exporter

  到了这里可以说就是遇到各种坑了。

  首先有两个源:

    1. https://github.com/dcu/mongodb_exporter

    2. https://github.com/percona/mongodb_exporter

  接下来就是这两个源的问题了

    对于1 

      ,直接下载mongodb_exporter-linux-amd64这个可执行文件,-h可查看帮助

    执行 ./mongodb_exporter-linux-amd64 -mongodb.uri "mongodb://xxxx:27017" 后,promethuse里的target state是up,但是某些地方出错,应该是作者有什么地方没写

    然后到github issues里一看,大家都是这个问题,于是果断换个源试试

  对于2 ,一开始由于对go的代码结构不熟悉,我用git clone把代码下载到本地,安装说明执行make进行编译时,报了个大概是代码包不在$GOPATH/github.com/percona/mongodb_exporter的错,没有留截图,因为这个插件是go写的,所以目录结构稍微有些多级,一开始我是手动创建再mv进去。贼蠢

  了解了go install,go get,go build命令及GOPATH以及下面的三个目录bin,pkg,src后发现该用go get方法来获取并编译mongodb_exporter

  • src存放源代码(比如:.go .c .h .s等)   按照golang默认约定,go run,go install等命令的当前工作路径(即在此路径下执行上述命令)。
  • pkg编译时生成的中间文件(比如:.a)  golang编译包时
  • bin编译后生成的可执行文件(为了方便,可以把此目录加入到 $PATH 变量中,如果有多个gopath,那么使用${GOPATH//://bin:}/bin添加所有的bin目录)

  对于2完整详述:

  1. go get  https://github.com/percona/mongodb_exporter(go get命令默认不显示过程)

  2. 如果碰到连接go.google.xxx连接失败等问题,说明你没翻墙,需要翻墙

  3.最后如果遇到下面的问题,不用担心,这个gocoverutil已经在GOPATH/bin里面了,只是你还没添加到环境变量中,而且这个测试不运行也罢。

    

  4.执行-h查看帮助,然后执行本文开头的命令,把这个exporter启起来。

  5.在promethuse要执行的yml文件中添加

    

  6.执行grafana,在localhost:3000里打开页面,登陆后添加promethuse数据源,在import dashborad,搜索2583,添加。  

5.在grafana里导入Mongodb Dashbord,工作结束。

     

6.问题

  1.exporter和mongodb是一对一还是可以一对多呢,这是个问题。

  

  

使用Promethus+Grafana监控Mongodb的更多相关文章

  1. Promethus+Grafana监控解决方案

    [MySQL]企业级监控解决方案Promethus+Grafana Promethus用作监控数据采集与处理,而Grafana只是用作数据展示 一.Promethus简介 Prometheus(普罗米 ...

  2. promethues exporter+ grafana 监控pg+mysql

    这篇文章本来是打算使用pmm 进行数据库监控的,但是居然参考官方文档使用docker 运行起来有点问题,所以直接改用 exporter 进行处理,但是比pmm 弱好多 pmm 的参考架构 说明,以上图 ...

  3. 使用MMS(MongoDB Monitoring Service)监控MongoDB

    使用MMS(MongoDB Monitoring Service)监控MongoDB 一.MongoDB简介: MongoDB是一个基于分布式文件存储的数据库.由C++语言编写.旨在为WEB应用提供可 ...

  4. Docker部署Zabbix+Grafana监控

    Docker部署Zabbix+Grafana监控 环境 centos 7 ; Docker 17.12.0-ce ; docker-compose version 1.20.1 2018-4-1 当前 ...

  5. cAdvisor+Prometheus+Grafana监控docker

    cAdvisor+Prometheus+Grafana监控docker 一.cAdvisor(需要监控的主机都要安装) 官方地址:https://github.com/google/cadvisor ...

  6. 用monit监控mongodb,崩溃后自动重启mongdb

    什么是monit Monit是一个跨平台的用来监控Unix/linux系统(比如Linux.BSD.OSX.Solaris)的工具.Monit特别易于安装,而且非常轻量级(只有500KB大小),并且不 ...

  7. [转帖]Prometheus+Grafana监控Kubernetes

    原博客的位置: https://blog.csdn.net/shenhonglei1234/article/details/80503353 感谢原作者 这里记录一下自己试验过程中遇到的问题: . 自 ...

  8. Zabbix应用八:Zabbix监控MongoDB

    利用Zabbix监控MongoDB 一.首先介绍mongodb采集到的数据含义: 1.状态采集命令: >db.serverStatus(); 2.输出内容: { "host" ...

  9. 使用Telegraf + Influxdb + Grafana 监控SQLserver服务器的运行状况

    使用Telegraf + Influxdb + Grafana 监控SQLserver服务器的运行状况 前言 本文在Debian9下采用Docker的方式安装Telegraf + Influxdb + ...

随机推荐

  1. 《AndroidStudio导入安卓源码-idegen》---可方便查看安卓源代码

    idegen是Android源码中的一个模块,需要编译一下.生成一个jar包.然后再进行构建生成AndroidStudio配置相关文件. > 什么是idegen 要将Android系统源代码工程 ...

  2. 《Effective Java》笔记45-56:通用程序设计

    将局部变量的作用域最小化,可以增强代码的可读性和可维护性,并降低出错的可能性. 要使用局部变量的作用域最小化,最有力的方法就是在第一次使用它的地方才声明,不要过早的声明. 局部变量的作用域从它被声明的 ...

  3. C++扬帆远航——8(张三李四,等差数列)

    /* * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:qiudengcha数列.cpp * 作者:常轩 * 完成日期: ...

  4. C++走向远洋——67(项目二、洗牌)

    */ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...

  5. Canvas 使用及应用

    Canvas canvas 是 HTML5 当中我最喜欢的所有新特性中我最喜欢的一个标签了.因为它太强大了,各种有意思的特效都可以实现. 1. canvas 的基本使用方法 - 它是一个行内块元素 - ...

  6. 【前端】这可能是你看过最全的css居中解决方案了~

    1.水平居中:行内元素解决方案 适用元素:文字,链接,及其其它inline或者inline-*类型元素(inline-block,inline-table,inline-flex) html部分代码: ...

  7. Yuchuan_Linux_C编程之九目录操作相关函数

    一.整体大纲 二.相关函数 1. getcwd 函数作用:获取当前目录 头文件 #include <unistd.h> 函数原型 char *getcwd(char *buf, size_ ...

  8. 01-if条件语句之数字比较

    if条件语句之数字比较 #!/bin/bash # 使用expr命令,比较结果正确,输入1,错误输入0 expr_mode(){ if [ $(expr $1 \<\= $2) -eq 1 ]; ...

  9. R语言实战(一) R语言介绍

    从2018年秋季(大二上学期)开始接触R语言,曾在2019年寒假读过一遍本书的第一版,感觉受益匪浅,之后遇到问题也曾回头来查阅这本书,前几天刚学习过Simulink,趁现在有空再来温习这本书,回顾一下 ...

  10. .NET实现一个简单的IOC容器

    目录 1.主要细节 2.具体示例 参考及示例代码下载 shanzm-2020年3月17日 20:06:01 1.主要细节 使用反射程序集的方式获取对象的类型 通过反射的方式获取指定类型的的所有公共属性 ...