Grafana、collectd 和 InfluxDB 打造酷炫监控系统(四)常用插件介绍和自定义数据篇

一、常用插件介绍

获取指定端口的连接状态ESTABLISHED、CLOSE_WAIT、LISTEN等

tcpconns:

<Plugin tcpconns>

ListeningPorts false

LocalPort "80"

RemotePort "80"

</Plugin>

获取Nginx的状态

nginx:

<Plugin nginx>

URL "http://test.tt.com/NginxStatus"

</Plugin>

ping:

<Plugin ping>

Host "172.18.2.125"

Interval 10.0

Timeout 1.0

</Plugin>

获取网卡的流量

interface:

<Plugin interface>

Interface "eth0"

</Plugin>

以下插件直接取消注释即可

cpu

load

memory

processes

二、通过influxDB的HTTP API操作数据库
1.创建数据库
#curl -G http://172.18.1.113:8086/query --data-urlencode "q=CREATE DATABASE mydb"

2.插入数据
#插入单条数据
#curl -i -XPOST ‘http://172.18.1.113:8086/write?db=mydb‘ --data-binary ‘cpu_load_short,host=server01,region=us-west value=0.66‘

#一次插入多条数据提高效率
#curl -i -XPOST ‘http://172.18.1.113:8086/write?db=mydb‘ --data-binary ‘cpu_load_short,host=server02 value=0.67
cpu_load_short,host=server02,region=us-west value=0.55  
cpu_load_short,direction=in,host=server01,region=us-west value=2.0‘

#将数据写入文件一次性插入
#curl -i -XPOST ‘http://172.18.1.113:8086/write?db=mydb‘ --data-binary @test.txt
#cat test.txt
cpu_load_short,host=server02 value=0.67
cpu_load_short,host=server02,region=us-west value=0.75
cpu_load_short,direction=in,host=server01,region=us-west value=7.0

3.查询数据
#curl -G ‘http://172.18.1.113:8086/query?pretty=true‘ --data-urlencode "db=mydb" --data-urlencode "q=SELECT value FROM cpu_load_short WHERE region=‘us-west‘"

使用命令行查询

#influx
> show databases;
name: databases
---------------
name
_internal
collectd
grafana
mydb
> use collectd;
Using database collectd
> select * from /load/ where host=‘t125‘ limit 2;
name: load_longterm
-------------------
timehosttypevalue
1456453923000000000t125load0
1456453933000000000t125load0
name: load_midterm
------------------
timehosttypevalue
1456453923000000000t125load0
1456453933000000000t125load0
name: load_shortterm
--------------------
timehosttypevalue
1456453923000000000t125load0
1456453933000000000t125load0

三、自定义监控数据

示例:监控站点的响应时间

#!bin/bash
time=`curl -o /dev/null -s -w %{time_connect}:%{time_starttransfer}:%{http_code} --connect-timeout 60 http://www.baidu.com
time_connect=`echo $time|cut -d ‘:‘ -f1`
time_starttransfer=`echo $time|cut -d ‘:‘ -f2`
http_code=`echo $time|cut -d ‘:‘ -f3`
response_time=($(echo $time_starttransfer-$time_connect|bc))
curl -i -XPOST ‘http://127.0.0.1:8086/write?db=collectd‘ --data-binary "oss_web,url=$1,type=response_time value=$response_time
oss_web,url=$1,type=time_connect value=$time_connect
oss_web,url=$1,type=time_starttransfer value=$time_starttransfer
oss_web,url=$1,type=http_code value=$http_code"

加入定时任务一分钟执行一次。然后去grafana绘图

时间: 2024-12-25 01:56:35

Grafana、collectd 和 InfluxDB 打造酷炫监控系统(四)常用插件介绍和自定义数据篇的相关文章

【监控】使用 Grafana、collectd 和 InfluxDB 打造现代监控系统

参考资料:Grafana 是 Graphite 和 InfluxDB 仪表盘和图形编辑器:http://www.oschina.net/p/grafana 使用 Grafana.collectd 和 InfluxDB 打造现代监控系统:https://linux.cn/article-5252-1.html collectd监控性能联合influxdb grafana打造metric收集系统:http://www.tuicool.com/articles/ErmIVnb 使用 Grafana+c

使用 Grafana、collectd 和 InfluxDB 打造现代监控系统

使用 Grafana.collectd 和 InfluxDB 打造现代监控系统 先给小伙伴们秀一下由grafana画出的监控效果图 想打造 New Relic 那样漂亮的实时监控系统我们只需要 InfluxDB/collectd/Grafana 这三个工具,这三个工具的关系是这样的: 采集数据(collectd)-> 存储数据(influxdb) -> 显示数据(grafana) InfluxDB 是 Go 语言开发的一个开源分布式时序数据库,非常适合存储指标.事件.分析等数据,看版本号(v0

使用NestedScrollView+ViewPager+RecyclerView+SmartRefreshLayout打造酷炫下拉视差效果并解决各种滑动冲突

使用NestedScrollView+ViewPager+RecyclerView+SmartRefreshLayout打造酷炫下拉视差效果并解决各种冲突 如果你还在为处理滑动冲突而发愁,那么你需要静下心来看看这边文章,如果你能彻底理解这篇文章中使用的技术,那么,一切滑动冲突的问题解决起来就轻而易举了:先扔一个最终实现的效果图 先分析下效果图中实现的功能点 顶部下拉时背景图形成视差效果 上拉时标题栏透明切换显示 底部实现TabLayout+ViewPager+Fragment+RecyclerV

Grafana、collectd 和 InfluxDB 打造现代监控系统(一)安装篇

为什么研究Grafana.collectd 和 InfluxDB,是因为本人工作中使用到的开源监控软件(nagios.Cacti)画图都是基于RRD实现的,老实说都不太美观,并且无法自定义图表,但是凭本人的开发水平还无法做到自己写图表. Grafana+collectd+InfluxDB,采用客户端->服务端存储->WEB界面显示的工作模式,使用UTP传输数据,并且支持自定义图表,有良好的扩展性,重要的是Grafana页面展示比较美观. 页面展示可浏览官方演示平台:http://play.gr

Grafana、collectd 和 InfluxDB 打造现代监控系统(二)配置篇

一.InfluxDB开启collectd插件 InfluxDB 现在自带一个 collectd 插件来获取 collectd 客户端发来的数据,以前可没这么方便哦,0.8.4 版本以前只能通过 influxdb-collectd-proxy 这样的第三方程序来连接 collectd 和 InfluxDB. InfluxDB 自带的 collectd 插件默认是关闭的,需要手动配置打开 enabled = true,并填上 database = "collectd" 这一行,这里的 &q

使用 StatsD + Grafana + InfluxDB 搭建 Node.js 监控系统

在石墨,我们之前使用 ELK 搭了一套监控图表,由于一些原因,比如: 1.Kibana 经常查日志查挂2.Kibana 的图表不太美观.不够灵活所以调研了一下,选择用 StatsD + Grafana + InfluxDB 搭建一套新的监控系统. 工具简介 StatsD 是一个使用 Node.js 开发的简单的网络守护进程,通过 UDP 或者 TCP 方式侦听各种统计信息,包括计数器和定时器,并发送聚合信息到后端服务,例如 Graphite.ElasticSearch.InfluxDB 等等,这

MVC中使用SignalR打造酷炫实用的即时通讯功能

資料來源:http://www.fangsi.net/1144.html 前言,现在这世道写篇帖子没个前言真不好意思发出来.本贴的主要内容来自于本人在之前项目中所开发的一个小功能,用于OA中的即时通讯.由于当时走的太急,忘记把代码拿出来.想想这已经是大半年前的事情了,时间过了这么久,在当时最新的SignalR2.0.1到现在已经变成了2.2.昨天晚上特地熬了个夜,重新又把它写出来做了一个小小的Demo.当然我只是大自然的搬运工,这个SignalR即时通讯功能里面有一些前端的类库不是我自己写的.我

MVC中使用SignalR打造酷炫实用的即时通讯功能附源码

前言,现在这世道写篇帖子没个前言真不好意思发出来.本贴的主要内容来自于本人在之前项目中所开发的一个小功能,用于OA中的即时通讯.由于当时走的太急,忘记把代码拿出来.想想这已经是大半年前的事情了,时间过了这么久,在当时最新的SignalR2.0.1到现在已经变成了2.2.昨天晚上特地熬了个夜,重新又把它写出来做了一个小小的Demo.当然我只是大自然的搬运工,这个SignalR即时通讯功能里面有一些前端的类库不是我自己写的.我只是改吧改吧~~在此鸣谢 @贤心,是他的几条库才使得我的这个功能如此酷炫.

Android使用SVG矢量图打造酷炫动效!

尊重原创,欢迎转载,转载请注明: FROM  GA_studio   http://blog.csdn.net/tianjian4592 一个真正酷炫的动效往往让人虎躯一震,话不多说,咱们先瞅瞅效果: 这个效果我们需要考虑以下几个问题: 1. 这是图片还是文字: 2. 如果是图片该如何拿到图形的边沿线坐标,如果是文字呢? 3. 如果拿到了边沿线坐标,如何让光线沿着路径跑动: 4. 怎么处理过程的衔接: 以上四个问题似乎不是太好处理,而这几个问题也正好是这个效果精华所在,接下来咱们一个一个进行考虑