文档首页 > > 开发指南> 对外接口> OpenTSDB API> 管理数据生命周期

管理数据生命周期

分享
更新时间:2020/06/17 GMT+08:00

功能介绍

针对Metric设置OpenTSDB数据库中数据生命周期TTL(Time To Live)时间,系统会定期清理“DataPoint时间戳 < 系统当前时间 – TTL时间”的数据。

TTL时间单位为小时,数据清理时也是以小时为单位。例如,系统当前时间是19:30,某个Metric的TTL时间为2,则17:00之前的数据才会被清理,而不是17:30之前的数据。

  • 如果某个Metric没有设置TTL时间,则使用全局TTL时间,如未设置全局TTL时间,数据不会被清理。如果设置了Metric的TTL,就使用Metric自己的TTL时间。
  • 如果某个Metric的TTL时间为0,表示该Metric未设置TTL,数据不会被清理。

URI

  • URI格式
    • 设置TTL

      PUT {OpenTSDB URL}/api/ttl

    • 查询TTL

      POST {OpenTSDB URL}/api/ttl

    • 删除TTL

      DELETE {OpenTSDB URL}/api/ttl

请求

  • 请求样例:设置TTL
    {
    	"global":36,
    	"ttl":{
    		"sys.cpu.nice":24,
    		"cpu.system":12
    	}
    }

    参数说明如下表所示,“global”“ttl”参数至少需指定一个。

    表1 参数说明

    名称

    类型

    是否必须

    描述

    global

    Integer

    全局TTL时间,单位为小时。表示未设置TTL的Metric数据有效期统一设置为“global”的取值。如果“global”取值为0,表示全局TTL无效。

    ttl

    Map

    设置TTL的Metric列表。采用Key-value格式,key为Metric名称,value为TTL时间,单位为小时。

    例如:"sys.cpu.nice": 24,表示设置Metric名为sys.cpu.nice的TTL时间为24小时。

  • 请求样例:查询TTL

    查询指定Metric的TTL:

    {
             "metrics":["sys.cpu.nice", "cpu.system"]
    }
    查询所有设置TTL的Metric和全局TTL:
    {
              "all":true
    }

    参数说明如下表所示,以下三个参数至少指定一个,如果指定了“metrics”至少要指定一个Metric。

    表2 参数说明

    名称

    类型

    是否必须

    描述

    global

    Boolean

    是否查询全局TTL时间。“true”表示查询当前“global”取值。

    all

    Boolean

    是否查询全部Metric的TTL时间。如果“all”“true”,则返回所有Metric的TTL和全局TTL,“metrics”参数失效。

    metrics

    String/Array

    需要查询的Metric名。设置单个Metric时,类型为String,设置多个Metric时,类型为Array。

  • 请求样例:删除TTL
    {
    	"global":true,
            "metrics":["sys.cpu.nice", "cpu.system"]
    }
    参数说明如下表所示,“metrics”至少要指定一个Metric或者“global”设置为“true”
    表3 参数说明

    名称

    类型

    是否必须

    描述

    global

    Integer,Boolean

    是否删除全局TTL。“true”表示删除当前“global”取值。

    all

    Boolean

    是否删除全部TTL。“true”表示删除全部TTL,此时“metrics”参数失效。

    metrics

    String/Array

    需要删除的Metric名。设置单个Metric时,类型为String,设置多个Metric时,类型为Array。

响应

  • 响应样例: 查询TTL
    {
        "global": 36,
        "ttl": {
            "sys.cpu.nice": 24,
            "cpu.system": 12
        }
    }
    表4 响应参数说明

    名称

    类型

    描述

    global

    Integer

    全局TTL时间,单位为小时。表示未设置TTL的Metric数据有效期统一为“global”的取值。如果“global”取值为0,表示全局TTL无效。

    ttl

    Map

    TTL的Metric列表。采用Key-value格式,key为Metric名称,value为TTL时间,单位为小时。

    例如:"sys.cpu.nice": 24,表示Metric名为sys.cpu.nice的TTL时间为24小时。

  • 响应样例:设置或删除TTL

    body体无内容返回。

状态码

状态码请参见响应码

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!非常感谢您的反馈,我们会继续努力做到更好!
反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

智能客服提问云社区提问