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内核分析——可执行程序的装载

    链接的过程 首先运行C预处理器cpp,将C的源程序(a.c)翻译成ASCII码的中间文件(a.i) 接着C编译器ccl,将a.i翻译成ASCII汇编语言文件a.s 接着运行汇编器as,将a.s翻译成可 ...

  2. 《Linux内核设计与实现》读书笔记 4 进程调度

    第四章进程调度 进程调度程序可看做在可运行太进程之间分配有限的处理器时间资源的内核子系统.调度程序是多任务操作系统的基础.通过调度程序的合理调度,系统资源才能最大限度地发挥作用,多进程才会有并发执行的 ...

  3. 《Linux内核分析与实现》 第五周 读书笔记

    第3章 进程管理 20135307张嘉琪 3.1 进程 进程就是处于执行期的程序(目标码存放在某种存储介质上),但进程并不仅仅局限于一段可执行程序代码.通常进程还要包含其他资源,像打开的文件,挂起的信 ...

  4. pandas的to_csv()使用细节和一些参数

    dt.to_csv('C:/Users/think/Desktop/Result.csv',sep='?')#使用?分隔需要保存的数据,如果不写,默认是, dt.to_csv('C:/Users/th ...

  5. c++中常见概念、关键字等的区别

    (1).重载,覆盖和隐藏的区别: 重载主要是函数的重载,函数名相同,返回类型相同,但是函数形参不同,被调用时,根据函数形参决定调用原函数还是重载函数. 覆盖主要用在继承多态中,函数前加virtual关 ...

  6. Oracle 数据库 Only 导出空表的方法

    1. 之前因为oracle11.2.0.1 的bug(deferred_segment_creation) 引起无法将空表导出. 有时给同事解释上半个小时他们也不知道 如何处理 或者是 他们不会用ex ...

  7. Windows 下面 winrar 压缩简单记录

    1. 最高压缩比率 原始文件大小: 2.06g(3000余个文件) 压缩后文件大小:475m 压缩耗时:  210s 压缩率:22% 2. 较高压缩比率 压缩后文件大小:700 m 压缩率:32% 3 ...

  8. javaIO缓冲区

    java中IO类分类. 图来自网络 缓冲区:应用程序在内存中开辟的一个空间.用来放置需要被写入或写出的数据. 使用缓冲区的 优点:使得应用程序操作磁盘(或者说是与磁盘的通信)的次数降低,提高应用程序的 ...

  9. 美图美妆由Try Try接手运营

    美图又把一个拖累营收的业务转让出去了. 美图的电商业务——美图美妆应用在向用户发布终止运营的公告后,宣布把业务交给了寺库旗下公司 Try Try 运营.Try Try 接手了美图美妆的所有管理运营权, ...

  10. Django的ORM常用查询操作总结(Django编程-3)

    Django的ORM常用查询操作总结(Django编程-3) 示例:一个Student model: class Student(models.Model): name=models.CharFiel ...