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


Posted in Python onSeptember 17, 2018

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

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

有图有真相

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

#! /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数据,至于后台+独立线程这些东西就见仁见智了

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

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

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

总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

Python 相关文章推荐
python实现dict版图遍历示例
Feb 19 Python
剖析Python的Tornado框架中session支持的实现代码
Aug 21 Python
使用py2exe在Windows下将Python程序转为exe文件
Mar 04 Python
Python 数据结构之旋转链表
Feb 25 Python
动态规划之矩阵连乘问题Python实现方法
Nov 27 Python
今天 平安夜 Python 送你一顶圣诞帽 @微信官方
Dec 25 Python
python判断一个数是否能被另一个整数整除的实例
Dec 12 Python
Python multiprocessing多进程原理与应用示例
Feb 28 Python
Python GUI编程 文本弹窗的实例
Jun 11 Python
python 画3维轨迹图并进行比较的实例
Dec 06 Python
Python数据分析入门之教你怎么搭建环境
May 13 Python
详解Python flask的前后端交互
Mar 31 Python
使用 Python 实现简单的 switch/case 语句的方法
Sep 17 #Python
深入理解Python中的 __new__ 和 __init__及区别介绍
Sep 17 #Python
python实现简单http服务器功能
Sep 17 #Python
python实现自动登录
Sep 17 #Python
python发送告警邮件脚本
Sep 17 #Python
python实现zabbix发送短信脚本
Sep 17 #Python
python通过zabbix api获取主机
Sep 17 #Python
You might like
JAVA/JSP学习系列之四
2006/10/09 PHP
11个PHP 分页脚本推荐
2011/08/15 PHP
PHP程序员不应该忽略的3点
2015/10/09 PHP
Yii2.0多文件上传实例说明
2017/07/24 PHP
php数据库的增删改查 php与javascript之间的交互
2017/08/31 PHP
PHP设计模式之适配器模式原理与用法分析
2018/04/25 PHP
JavaScript DOM 学习第三章 内容表格
2010/02/19 Javascript
锋利的jQuery 要点归纳(三) jQuery中的事件和动画(上:事件篇)
2010/03/24 Javascript
Jquery下attr和removeAttr的使用方法
2010/12/28 Javascript
深入理解javascript中defer的作用
2013/12/11 Javascript
jquery 图片缩放拖动的简单实例
2014/01/08 Javascript
全面解析JavaScript的Backbone.js框架中的Router路由
2016/05/05 Javascript
js放到head中失效的原因与解决方法
2017/03/07 Javascript
JS实现动态生成html table表格的方法分析
2018/07/11 Javascript
nodejs通过钉钉群机器人推送消息的实现代码
2019/05/05 NodeJs
使用原生JS实现火锅点餐小程序(面向对象思想)
2019/12/10 Javascript
[01:10:16]DOTA2上海特级锦标赛B组资格赛#2 Fnatic VS Spirit第一局
2016/02/27 DOTA
python网络编程之UDP通信实例(含服务器端、客户端、UDP广播例子)
2014/04/25 Python
深入浅析Python字符编码
2015/11/12 Python
Python网络爬虫项目:内容提取器的定义
2016/10/25 Python
Python中装饰器兼容加括号和不加括号的写法详解
2017/07/05 Python
Python编程之序列操作实例详解
2017/07/22 Python
python实现转盘效果 python实现轮盘抽奖游戏
2019/01/22 Python
python中时间、日期、时间戳的转换的实现方法
2019/07/06 Python
Python3操作YAML文件格式方法解析
2020/04/10 Python
Python urllib.request对象案例解析
2020/05/11 Python
Python 实现自动登录+点击+滑动验证功能
2020/06/10 Python
python对execl 处理操作代码
2020/06/22 Python
Python创建文件夹与文件的快捷方法
2020/12/08 Python
详解appium自动化测试工具(monitor、uiautomatorviewer)
2021/01/27 Python
Omio波兰:全欧洲低价大巴、火车和航班搜索和比价
2018/02/16 全球购物
Antonioli美国在线商店:时尚前卫奢华
2019/07/29 全球购物
小学语文教研活动总结
2014/07/01 职场文书
初中班主任工作总结2015
2015/05/13 职场文书
怒海潜将观后感
2015/06/11 职场文书
MySQL 条件查询的常用操作
2022/04/28 MySQL