You need to enable JavaScript to run this app.
ByteHouse云数仓版

ByteHouse云数仓版

复制全文
监控告警
使用 SDK 查询 ByteHouse 监控数据
复制全文
使用 SDK 查询 ByteHouse 监控数据

前提条件

获取 ByteHouse 账号的 Access Key,具体步骤请参见 获取Access Key

下载/安装 SDK

选择下面合适的 SDK 版本:

编程语言

Github地址

指导文档

Python

volcengine-python-sdk

Python使用示例

Java

volcengine-Java-sdk

Java使用示例

Go

volcengine-go-sdk

Go使用示例

参数说明

具体请求 Body 参数可以参考云监控相关文档:GetMetricData
下面是一些必填参数:

参数名称

是否必填

备注

ak/sk

当前账号的 ak/sk。具体步骤请参见 获取Access Key

region

如:cn-beijing

Namespace

固定为:VCM_ByteHouse

StartTime

查询的时间选段的开始时间,秒级时间戳,例如1632904500。

EndTime

查询的时间选段的结束时间,秒级时间戳,例如1632904801。
EndTime > StartTime。
EndTime不能输入未来时间。
EndTime < 产品允许查询天数 + StartTime。

Instances

要查询的指标维度信息。例如,查询 Connection_Gateway_Connection_Count 指标,维度需要配置成 ResourceID 。
存在多个instance时,instance和instance之间的逻辑关系是or。
如果不传instance参数,会返回该地域下所有实例的监控数据。数据量较大可能会导致max-select-point超限,对业务产生影响,请谨慎操作

MetricName

要查询的监控指标名称。

SubNamespace

要查询的指标所属的维度。

目前 Bytehouse 云监控可查看的全量指标请参见监控指标说明

注意

每个指标都必须传递 ResourceID。在当前版本中,ResourceID 等于 envID,传递 envID 即可。

代码示例

以 GO SDK 为例,查询 VirtualWarehouse_CPU_Usage_Percentage 指标,维度筛选为 ResourceID、VWID。
使用时,请使用实际的 ResourceID 和 VWID 替换,获取方式如下:

  • ResourceID:即 envID,您可登录 ByteHouse 云数仓版控制台,单击顶部租户管理,在基本信息页签下的当前环境中查看并复制当前环境名称。
    Image
  • VWID:即计算组 ID,您可登录 ByteHouse 控制台,单击顶部计算组,在计算组列表中查看并复制所需计算组 ID。
    Image
package main

import (
    "fmt"

    "github.com/volcengine/volcengine-go-sdk/service/volcobserve"
    "github.com/volcengine/volcengine-go-sdk/volcengine"
    "github.com/volcengine/volcengine-go-sdk/volcengine/session"
)

func main() {
    // 设置您的ak
    ak := "xxx"
    // 设置您的sk
    sk := "xxx"
    // 设置您要访问的地域
    var region = "cn-beijing"

    //if use env Credentials
    //please
    //export VOLCSTACK_ACCESS_KEY=AK
    //export VOLCSTACK_SECRET_KEY=SK
    // and WithCredentials(credentials.NewEnvCredentials())
    config := volcengine.NewConfig().
       WithRegion(region).
       WithAkSk(ak, sk).
       // WithCredentials(credentials.NewEnvCredentials()).
       WithLogLevel(volcengine.LogDebugWithHTTPBody).
       WithDisableSSL(true)
    sess, _ := session.NewSession(config)
    svc := volcobserve.New(sess)

    in := &volcobserve.GetMetricDataInput{
       StartTime: volcengine.Int64(1732848879),
       EndTime:   volcengine.Int64(1732852479),
       Instances: []*volcobserve.InstanceForGetMetricDataInput{
          {
             Dimensions: []*volcobserve.DimensionForGetMetricDataInput{
                {
                   Name:  volcengine.String("ResourceID"),
                   Value: volcengine.String("xxxxxxxxxx"),
                },
             },
          },
          {
             Dimensions: []*volcobserve.DimensionForGetMetricDataInput{
                {
                   Name:  volcengine.String("VWID"),
                   Value: volcengine.String("vw-{vwID}-{vw_name}"),
                },
             },
          },
       },
       MetricName:   volcengine.String("VirtualWarehouse_CPU_Usage_Percentage"),
       Namespace:    volcengine.String("VCM_ByteHouse"),
       Period:       volcengine.String("1m"),
       SubNamespace: volcengine.String(""),
    }
    resp, err := svc.GetMetricData(in)
    if err != nil {
       panic(err)
    }
    fmt.Printf("Response is %v", resp)
}
最近更新时间:2025.11.14 16:29:22
这个页面对您有帮助吗?
有用
有用
无用
无用