Git:https://github.com/influxdata/influxdb-python

帮助文档:http://influxdb-python.readthedocs.io/en/latest/examples.html

代码样例

# -*- coding: utf-8 -*-

"""
pip install influxdb
InfluxDB属于时序数据库,没有提供修改和删除数据的方法。
""" from influxdb import InfluxDBClient class InfluxDBBaseClass(object): def __init__(self, ip, port, username=None, password=None, timeout=10, dbname=None):
self.ip = ip
self.port = int(port)
self.username = username
self.password = password
self.timeout = timeout
self.dbname = dbname
self.__connect() def __connect(self):
self.client = InfluxDBClient(host=self.ip, port=self.port, username=self.username, password=self.password,
timeout=self.timeout, database=self.dbname) @property
def get_list_database(self):
"""
:return: 显示所有数据库名称
"""
return self.client.get_list_database() def create_database(self, dbname):
"""
:param dbname: 数据库名称
:return: 创建数据库
"""
return self.client.create_database(dbname) def drop_database(self, dbname):
"""
:param dbname: 数据库名称
:return: 删除数据库
"""
return self.client.drop_database(dbname) def get_list_table(self, dbname=None):
"""
:param dbname: 数据库名称
:return: 显示数据库中的表
"""
if self.dbname:
return self.client.query('show measurements;', database=self.dbname)
else:
return self.client.query('show measurements;', database=dbname) def delete_table(self, tablename, dbname=None):
"""
:param dbname: 数据库名称
:param tablename: 表名
:return: 删除表
"""
if self.dbname:
return self.client.query('drop measurement %s;' % tablename, database=self.dbname)
else:
return self.client.query('drop measurement %s;' % tablename, database=dbname) def insert_data(self, json_body, dbname=None):
"""
:param json_body: InfluxDB没有提供单独的建表语句,可以通过并添加数据的方式建表
:param dbname: 数据库名称
:return: 创建新表并添加数据
样例数据:json_body = [
{
"measurement": "cpu_load_short",
"tags": {
"host": "server01",
"region": "us-west"
},
"time": "2009-11-10T23:00:00Z",
"fields": {
"Float_value": 0.64,
"Int_value": 3,
"String_value": "Text",
"Bool_value": True
}
}
]
"""
if self.dbname:
return self.client.write_points(json_body, database=self.dbname)
else:
return self.client.write_points(json_body, database=dbname) def query_table(self, query_content, dbname=None):
"""
:param query_content: 查询语句
:param dbname: 数据库名称
:return: 查询表中数据
"""
if self.dbname:
return self.client.query(query_content, database=self.dbname)
else:
return self.client.query(query_content, database=dbname) def delete_series(self, dbname=None, measurement=None, tags=None):
"""
:param dbname: 数据库名称
:param measurement: 表名
:param tags: 索引
:return: 删除series集合
"""
if self.dbname:
return self.client.delete_series(database=self.dbname, measurement=measurement, tags=tags)
else:
return self.client.delete_series(database=dbname, measurement=measurement, tags=tags)

influxdb结合grafana监控redis性能指标

influxdb结合grafana监控RabbitMQ性能指标

python influxdb的更多相关文章

  1. dbclient python ---influxdb -install -relay--http write--read.[create db]

    1s=1000ms 1ms=1000 microseconds 1microsecond=1000 nanoseconds+01:00 from influxdb import InfluxDBCli ...

  2. docker-compose(grafana influxdb) + telegraf 快速搭建简单监控

     灵活实现方案:   1:     telegraf 为go 语言写得占用内存小 收集主机各项监控数据 定时写入 时序DB   influxdb ------------------------&qu ...

  3. 使用python操作InfluxDB

    环境: CentOS6.5_x64InfluxDB版本:1.1.0Python版本 : 2.6 准备工作 启动服务器 执行如下命令: service influxdb start 示例如下: [roo ...

  4. 性能测试 基于Python结合InfluxDB及Grafana图表实时监控Android系统和应用进程

    基于Python结合InfluxDB及Grafana图表实时监控Android系统和应用进程   By: 授客 QQ:1033553122     1. 测试环境 2. 实现功能 3. 使用前提 4. ...

  5. 性能测试 基于Python结合InfluxDB及Grafana图表实时采集Linux多主机性能数据

    基于Python结合InfluxDB及Grafana图表实时采集Linux多主机性能数据   by:授客 QQ:1033553122 实现功能 测试环境 环境搭建 使用前提 使用方法 运行程序 效果展 ...

  6. Python 使用Python远程连接并操作InfluxDB数据库

    使用Python远程连接并操作InfluxDB数据库 by:授客 QQ:1033553122 实践环境 Python 3.4.0 CentOS 6 64位(内核版本2.6.32-642.el6.x86 ...

  7. InfluxDB——python使用手册

    InfluxDB--python使用手册 准备工作 安装InfluxDB: 请参考笔者相关博文:Centos7安装InfluxDB1.7 安装pip : yum install python-pip ...

  8. 性能测试 基于Python结合InfluxDB及Grafana图表实时采集Linux多主机或Docker容器性能数据

    基于Python结合InfluxDB及Grafana图表实时采集Linux多主机性能数据   by:授客 QQ:1033553122 实现功能 1 测试环境 1 环境搭建 3 使用前提 3 使用方法 ...

  9. Python操作Influxdb数据库

    1.influxdb基本操作[root@test ~]# wget https://dl.influxdata.com/influxdb/releases/influxdb-1.2.4.x86_64. ...

随机推荐

  1. “Linux内核分析”实验报告

    Linux内核分析:实验一 潘俊洋 原创作品转载请注明出处 <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-100002900 ...

  2. C学习随笔

    1)要经常复习,一些基础的知识点,学过的.讲过的实例,应多看一下,学习并掌握编程的语法.思路.实验中可看出,不少同学对以前知识没有掌握,对讲过的实例没有理解2)要经常实践,纸上得来终觉浅,绝知此事要躬 ...

  3. String系列-----AbstractStringBuilder

    1. AbstractStringBuilder是StringBuffer和StringBuilder的父类 package com.amazing.jdk.string_2017_12_31; im ...

  4. 配置Activiti Explorer使用MYSQL

    http://blog.csdn.net/lxxxzzl/article/details/39583977

  5. Hot code replace (HCR)

    https://wiki.eclipse.org/FAQ_What_is_hot_code_replace%3F https://zhidao.baidu.com/question/195505558 ...

  6. ASP.NET MVC4学习笔记

    一.MVC简介

  7. 周刷题第一期总结(two sum and two numbers)

    由于深深的知道自己是事件驱动型的人,一直想补强自己的薄弱环节算法,却完全不知道从哪里入手.所以只能采用最笨的办法,刷题.从刷题中遇到问题就解决问题,最后可能多多少少也能提高一下自己的渣算法吧. 暂时的 ...

  8. 反编译微信小程序

    最近看了个微信小程序古诗词全集,想知道他的前后端是怎么实现的,所以就想到了反编译.小程序安装后会有个wxapkg格式的文件存在/data/data/com.tencent.mm/MicroMsg/** ...

  9. delphi中怎么获取服务器的时间

    下面是公司的代码,调整成ADO控件,给你参考一下: function GetNetDate: TDateTime; begin with TADOQuery.Create(nil) do begin ...

  10. 激活win10专业版

    每180天激活一次