涛子 - 简单就是美

成单纯魁增,永继振国兴,克复宗清政,广开家必升

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
  428 随笔 :: 0 文章 :: 19 评论 :: 22万 阅读

http://influxdb-python.readthedocs.org/en/latest/

api接口,返回数组

#!/usr/bin/env python
# -*- encoding: utf-8 -*-

import json
import yaml
from flask import Flask, render_template, request, url_for
from influxdb import InfluxDBClient

app = Flask(__name__)
client = InfluxDBClient(host='10.10.32.109', port=8086, username='root', password='root', database='dashboard')

@app.route('/', methods=['GET'])
def index():
    file = 'dashboard.yaml'
    with open(file) as f:
        content = yaml.load(f)
        switches = [ i['name'] for i in content['switch'] ]
    return render_template('index.html', switches=switches)

@app.route('/api', methods=['GET'])
def api():
    measure, host, start, stop = request.args['measure'], request.args['name'], request.args['start'], request.args['stop'] 
    query = 'select * from '+ measure + ' where host=\'' + host + \
        '\' and time > \'' + start + '\' and time < \'' + stop +'\'' 
    result = client.query(query)
    return json.dumps([ value[1] for value in result.raw['series'][0]['values'] ])

if __name__ == '__main__':
    app.run(host='0.0.0.0', debug=True)
posted on   北京涛子  阅读(2995)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类
点击右上角即可分享
微信分享提示