1、influxdb的基本使用
- 启动influxdb数据库
influxd -config /etc/influxdb/influxdb.conf
- 创建数据库
curl -i -X POST http://localhost:8086/query --data-urlencode "q=create database testdb"
testdb为数据库名称
- 写入数据
- 不带时间戳
curl -i -X POST 'http://localhost:8086/write?db=testdb' --data-binary 'students,stuid=s123 score=89'
students为表名
- 带时间戳
curl -i -X POST 'http://localhost:8086/write?db=testdb' --data-binary 'students,stuid=s123 score=89 1434055562000000000'
- 数据库常用语句
> show databases;
name: databases
name
----
_internal
jmeter
testdb
> use testdb;
> show measurements;
>
> drop measurement tables_name #删除表
> SELECT mean("value") FROM "load" where time < now() - 15s GROUP BY time(15s) fill(null); # 常用查询
2、grafana配置
grafana目前网上教程很多,可以自行安装和配置
2.1、grafana配置influxdb
2.2、添加自定义监控面板
自定义监控参数变量
配置变量
2.3、往influxdb写入数据
每个15s获取系统的负载写入influxdb
# 先创建数据库testdb
curl -i -X POST http://10.2.2.19:8086/query --data-urlencode "q=create database testdb"
while true
do
cpu_load=`uptime | awk {'print $10'} | sed 's/,//g'`
#echo $cpu_load
curl -i -X POST 'http://10.2.2.19:8086/write?db=testdb' --data-binary 'load value='$cpu_load
sleep 15
done
2.4、配置监控展示数据源
SELECT mean("value") FROM "load" WHERE $timeFilter GROUP BY time($__interval) fill(null)