grafana+influxdb数据可视化

日常我们会有一些记录历史性能数据并进行分析观察的需求,一般简单地做法是通过日志记录下数据,然后整个文档(高级一点存到db里),后面自己通过工具来维护查看。

这里我们就来看一看如何通过grafana+influxdb来简单的实现这个需求(轻量级的elk)

grafana+influxdb数据可视化_第1张图片

grafana+influxdb数据可视化_第2张图片

influxdb技术实现上充分利用了Go语言的特性,无需任何外部依赖即可独立部署。应用mit协议开源,但其集群方案InfluxDB-Relay是商用的,所以如果要做线上采集分线,还是换别的靠谱data-source吧

如何安装

grafana安装 Download Grafana | Grafana LabsOverview of how to download and install different versions of Grafana on different operating systems.https://grafana.com/grafana/download?platform=linux

sudo apt-get install -y adduser libfontconfig1
wget https://dl.grafana.com/enterprise/release/grafana-enterprise_8.3.3_amd64.deb
sudo dpkg -i grafana-enterprise_8.3.3_amd64.deb

influxdb安装

安装 · InfluxDB中文文档grafana+influxdb数据可视化_第3张图片https://jasper-zhang1.gitbooks.io/influxdb/content/Introduction/installation.html

curl -sL https://repos.influxdata.com/influxdb.key | sudo apt-key add -
source /etc/os-release

sudo apt-get update && sudo apt-get install influxdb
sudo service influxdb start

* 我在安装时遇到一个无法启动进程的问题,可以参考 Installing InfluxDB as a service on Ubuntu without systemd

访问influxdb

第一次访问前,需要先创建数据库

curl -i -XPOST http://localhost:8086/query --data-urlencode "q=CREATE DATABASE mydb"

可以使用http post的方式将数据存储到influxdb中

curl -i -XPOST 'http://10.246.47.160:8086/write?db=testDb' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.64 1434055562000000000'
其中的postdata部分,参考下面一段网上的格式说明
measurement: 类似于mysql的 tablename
tag: 用来分类的属性(自动加索引)
field: 用来存储数据的属性(一直是数值型,没有索引)

measurement 和 filed(s) 之间 必需用空格分隔,如果有 tag(s) , tag 和 field 间必需空格分隔。measurement 和 tag,tag 和 tag 之间必行用一个逗号分隔,并且之间不能有空格。如果有 timestamp,field 和 timestamp 之间也必需用空格分隔。
 
合法的例子 ( value 和 otherval 是 field, foo 和 bat 是 tag )
measurement value=12
measurement value=12 1439587925
measurement,foo=bar value=12
measurement,foo=bar value=12 1439587925
measurement,foo=bar,bat=baz value=12,otherval=21 1439587925
 
不合法的
measurement,value=12
measurement value=12,1439587925
measurement foo=bar value=12
measurement,foo=bar,value=12 1439587925
measurement,foo=bar
measurement,foo=bar 1439587925

 通过http的返回值判定是否成功写入

grafana+influxdb数据可视化_第4张图片

使用grafana展示数据

grafana已经绑定了数据源

 grafana+influxdb数据可视化_第5张图片

 通过query界面可以方便的进行查询和数据聚合等操作grafana+influxdb数据可视化_第6张图片

 数据调试查看工具

如果希望直接查看和修改db中保存的数据,可以使用这个工具

https://github.com/CymaticLabs/InfluxDBStudio/releases/tag/v0.2.0-beta.1

功能比较简单,但能用!

你可能感兴趣的:(游戏,数据分析,网络协议,数据可视化)