influx+grafana自定义python采集数据和一些坑的总结

yipeiwu_com5年前Python基础

先上网卡数据采集脚本,这个基本上是最大的坑,因为一些数据的类型不正确会导致no datapoint的错误,真是令人抓狂,注意其中几个key的值必须是int或者float类型,如果你不慎写成了string,那就麻烦了,其他的tag是string类型。

另外数据采集时间间隔一般就是10秒,这是潜规则,大家都懂。

有图有真相

#! /usr/bin/env python
#-*- coding:utf-8 -*-
 
import os
import arrow
import time
from time import sleep
from influxdb import InfluxDBClient
 
client = InfluxDBClient('localhost', 8086, 'root', '', 'telegraf') 
 
while True:
  if int(time.time())%10 == 0:
    cmd = 'cat /proc/net/dev|grep "ens4"'
    rawline = os.popen(cmd).read().strip()
    rxbytes = int(rawline.split()[1])
    txbytes = int(rawline.split()[9])
    rxpks = int(rawline.split()[2])
    txpks = int(rawline.split()[10])
    now = str(arrow.now()).split('.')[0] + 'Z'
 
    print time.time(), rxbytes,txbytes,rxpks,txpks  
 
    json_body = [
      {
        "measurement": "network",
        "tags": {
          "host": "gc-u16",
          "nio": "ens4"
        },
        #"time": now,
        "fields": {
          "rxbytes": rxbytes,
          "txbytes": txbytes,
          "rxpks": rxpks,
          "txpks": txpks
        }
      }
    ]
 
    client.write_points(json_body)
  sleep(1)

运行脚本,查看influxdb数据,至于后台+独立线程这些东西就见仁见智了

然后配置图形,这个就简单了,只要你数据没写错,基本上grafana都能采集到,这里忽略配置数据源创建dashboard和表格等乱七八糟的,直接上配置的sql图形,大致就是这样吧

总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

通过python实现弹窗广告拦截过程详解

通过python实现弹窗广告拦截过程详解

原理 这里实现的弹窗拦截,是程序不断的监视电脑屏幕,当出现需要拦截的窗口时,自动控制屏幕点击事件关闭。第一步:将需要关闭弹窗的点击位置截图。 直接上代码 while True:...

Python实现Restful API的例子

最近写了一个网络验证登录的爬虫,需要发布为Rest服务,然后发现Flask是一个很好的Web框架,使用Python语言实现。 1. 安装flask pip install flask...

python实现多线程采集的2个代码例子

代码一: #!/usr/bin/python # -*- coding: utf-8 -*- #encoding=utf-8   import threading impo...

python3使用print打印带颜色的字符串代码实例

一、实现过程 终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关 转义序列是以ESC开头,即用\033来完成(ESC的ASCII码用十进制表示是27,用八进制...

使用Python标准库中的wave模块绘制乐谱的简单教程

使用Python标准库中的wave模块绘制乐谱的简单教程

在本文中,我们将探讨一种简洁的方式,以此来可视化你的MP3音乐收藏。此方法最终的结果将是一个映射你所有歌曲的正六边形网格地图,其中相似的音轨将处于相邻的位置。不同区域的颜色对应不同的音乐...