/api/tree/branch

分支代表树层次结构中的一个级别,并包含有关子分支和/或叶子的信息。从 API 角度来看,分支是不可变的,并且只能通过使用 CLI 命令通过树规则通过树规则处理 TSMeta,或者遇到新的时间序列或修改 TSMeta 对象时,才能创建或修改分支。因此,branch端点仅支持GET动词。

分支由branchId(十六进制编码的字符串)标识,该字符串表示其所属树的 ID 以及该分支所源自的每个父级的 ID。所有分支都起源于树的 ROOT 分支,这通常是浏览时的起点。要获取 ROOT ,只需使用有效的treeId调用此 endpoingt 即可。根分支 ID 也是树 ID 的 4 个字符的编码。

Verbs

Requests

以下字段可用于请求分支。只能使用其中一个。

Name Data Type Required Description Default QS RW Example
treeId Integer Optional 用于获取树的根分支。如果与 branchId 结合使用,树 ID 将被忽略。 treeid RO 1
branch String Required 分支 ID 的十六进制表示,除了根分支请求之外的所有请求都需要 branch RO 000183A21C8F

Response

对请求的成功响应将使用请求的序列化程序返回分支对象。如果请求的树或分支在系统中不存在,则将返回404并显示错误消息。

响应返回的字段包括:

Name Data Type Description Example
treeId Integer 分支所属树的 ID 1
displayName String 规则集确定的分支名称 sys
branchId String 分支的十六进制编码 ID 00010001BECD
depth Integer 树内分支的深度,从根分支的* 0 *开始 1
path Map 父分支名称及其深度的列表。 See Below
branches Array 子分支对象的数组。可能是null See Below
leaves Array 一组子叶对象。可能是null 请参阅下面的叶子

Leaves

如果分支包含子叶子,即存储在 OpenTSDB 中的时间序列,则其 Metrics,标签,TSUID 和显示名称将包含在结果中。叶字段如下:

Name Data Type Description Example
metric String 时间序列的 Metrics 名称 sys.cpu.0
tags Map 代表时间序列的标签名称和值的列表 See Below
tsuid String 十六进制编码的时间序列 ID 000001000001000001
displayName String 规则集解析的名称 user

GET

示例根 GET 查询

http://localhost:4242/api/tree/branch?treeid=1

Example Response

{
    "leaves": null,
    "branches": [
        {
            "leaves": null,
            "branches": null,
            "path": {
                "0": "ROOT",
                "1": "sys"
            },
            "treeId": 1,
            "displayName": "sys",
            "branchId": "00010001BECD",
            "depth": 1
        }
    ],
    "path": {
        "0": "ROOT"
    },
    "treeId": 1,
    "displayName": "ROOT",
    "branchId": "0001",
    "depth": 0
}

示例分支 GET 查询

http://localhost:4242/api/tree/branch?branchid=00010001BECD000181A8

Example Response

{
    "leaves": [
        {
            "metric": "sys.cpu.0.user",
            "tags": {
                "host": "web01"
            },
            "tsuid": "000001000001000001",
            "displayName": "user"
        }
    ],
    "branches": [
        {
            "leaves": null,
            "branches": null,
            "path": {
                "0": "ROOT",
                "1": "sys",
                "2": "cpu",
                "3": "mboard"
            },
            "treeId": 1,
            "displayName": "mboard",
            "branchId": "00010001BECD000181A8BF992A99",
            "depth": 3
        }
    ],
    "path": {
        "0": "ROOT",
        "1": "sys",
        "2": "cpu"
    },
    "treeId": 1,
    "displayName": "cpu",
    "branchId": "00010001BECD000181A8",
    "depth": 2
}
首页