open-falcon之query

功能

query组件,提供统一的绘图数据查询入口。query组件接收查询请求,根据一致性哈希算法去相应的graph实例查询不同metric的数据,然后汇总拿到的数据,最后统一返回给用户。

配置文件


{

    "debug": "false",   // 是否开启debug日志

    "http": {

        "enabled":  true,          // 是否开启http.server

        "listen":   "0.0.0.0:9966" // http.server监听地址&端口

    },

    "graph": {

        "connTimeout": 1000, // 单位是毫秒,与后端graph建立连接的超时时间,可以根据网络质量微调,建议保持默认

        "callTimeout": 5000, // 单位是毫秒,从后端graph读取数据的超时时间,可以根据网络质量微调,建议保持默认

        "maxConns": 32,      // 连接池相关配置,最大连接数,建议保持默认

        "maxIdle": 32,       // 连接池相关配置,最大空闲连接数,建议保持默认

        "replicas": 500,     // 这是一致性hash算法需要的节点副本数量,应该与transfer配置保持一致

        "cluster": {         // 后端的graph列表,应该与transfer配置保持一致;不支持一条记录中配置两个地址

            "graph-00": "test.hostname01:6070",

            "graph-01": "test.hostname02:6070"

        }

    },

    "api": {  // 适配grafana需要的API配置

        "query": "http://127.0.0.1:9966",     // query的http地址

        "dashboard": "http://127.0.0.1:8081", // dashboard的http地址

        "max": 500                            //API返回结果的最大数量

    }

}

默认端口

  • http:9966 提供一组查询接口API

API接口

查询流程

  1. 从query中查询数据需要提供endpoint和counter

  2. query收到查询请求,根据提供的endpoin和counter进行一致性hash,在hash环上找到对应的graph

3.向对应的graph 发送查询数据的请求

4.重新组合规整graph返回额的数据,最后返回给用户

posted @ 2017-04-17 13:03  Fuzengjie  阅读(2247)  评论(0编辑  收藏  举报