从OpenTSDB数据库中查询数据。
URI
URI格式
POST {OpenTSDB URL}/api/query
请求
请求样例
{
"start": 1504527820,
"end": 1504557820,
"queries": [
{
"aggregator": "sum",
"metric": "cpu.system",
"rate": "true",
"filters": [
{
"type":"regexp",
"tagk":"host",
"filter":"web[0-9]+.lax.mysite.com",
"groupBy":true
},
{
"type":"literal_or",
"tagk":"dc",
"filter":"lax|dal",
"groupBy":false
},
]
}
]
}
参数说明
表1 请求参数说明
表2 子查询参数说明
downsample说明-重采样
当查询的时间跨度很大,例如每秒都将温度作为数据写入OpenTSDB,每个小时会产生3600条数据点,当查询一周的数据时,会返回604800个数据点。展示如此多数据会显得很乱,通常也不需要这样精确的数据。使用降精度的方式将一段时间的数据点聚合后当作一个数据点,比如将每个小时的数据聚合为1个数据点,这样就会只显示168个数据点。
格式:
<Interval><units>-<aggregator>[c][-<fill policy>]
“Interval” :时间数值,unit:时间单位,s秒,m分,h小时,d天。示例:1h , 30m, 24h
“aggregator” :聚合策略,将一段时间点聚合为一个数据点的策略。参见[aggregator说明]。
“fill policy” : 补值策略,当使用aggreator计算一段时间内的汇聚值时,遇到中间缺少的数据点时,会使用一定的策略补充数据。补值策略请参见表4。
aggregator说明
aggregator在降精度downsample和多条时间线聚合时使用。通过算子将多个数据点汇聚成一个数据点。汇聚的算子请参见表3
表3-算子
表4-补值策略参数
表5-filter参数
表6-filter-type参数
相应
响应样例
[
{
"metric": "tsd.hbase.puts",
"tags": {
"host": "tsdb-1.mysite.com"
},
"aggregatedTags": [],
"dps": {
"1365966001": 3758788892,
"1365966061": 3758804070,
...
"1365974281": 3778141673
}
},
{
"metric": "tsd.hbase.puts",
"tags": {
"host": "tsdb-2.mysite.com"
},
"aggregatedTags": [],
"dps": {
"1365966001": 3902179270,
"1365966062": 3902197769,
...
"1365974281": 3922266478
}
}
]
参数说明
表7 响应参数说明