最近更新时间:2025-09-23 19:06:41
以下代码用于通过KS3提供的计量接口查询以下内容:
查询KS3的桶用量详情数据,包括容量、流量、带宽、请求次数、数据取回量、对象标签数等。
查询业务分析数据,包括以Object、Referer、IP、UA为统计维度的流量或请求次数。
package main
import (
"fmt"
"github.com/ks3sdklib/aws-sdk-go/aws"
"github.com/ks3sdklib/aws-sdk-go/aws/awsutil"
"github.com/ks3sdklib/aws-sdk-go/aws/credentials"
"github.com/ks3sdklib/aws-sdk-go/service/s3"
)
func main() {
// 创建访问凭证,请将<AccessKeyID>与<SecretAccessKey>替换成真正的值
cre := credentials.NewStaticCredentials("<AccessKeyID>", "<SecretAccessKey>", "")
// 创建S3Client,更多配置项请查看Go-SDK初始化文档
client := s3.New(&aws.Config{
Credentials: cre, // 访问凭证
Region: "BEIJING", // 填写您的Region
Endpoint: "ks3-cn-beijing.ksyuncs.com", // 填写您的Endpoint
Ks3BillEndpoint: "ks3bill.api.ksyun.com", // ks3计量Endpoint
})
// 桶用量详情及业务分析查询
resp, err := client.QueryKs3Data(&s3.QueryKs3DataInput{
StartTime: aws.String("20250901"), // 查询用量开始时间,格式为:yyyyMMdd,如:20250901 表示查询从2025年9月1日0点0分开始的用量,必填
EndTime: aws.String("20250902"), // 查询用量结束时间,格式为:yyyyMMdd,如:20250902 表示查询到2025年9月2日23点59分结束的用量,必填
BucketNames: []string{"test-bucket-1", "test-bucket-2"}, // 存储空间名称,最多支持同时查询5个存储桶的用量明细,必填
Ks3Products: []string{"DataSize", "RequestsGet", "RequestsPut"}, // 可以查询单个或多个计费项,如果不填,则查询除带宽外的所有计费项,非必填
Transfers: []string{"Object", "IP"}, // 可以查询单个或多个统计项的流量情况,可选值:Object、Referer、IP、UA,返回TOP200数据,非必填
Requests: []string{"Object", "UA"}, // 可以查询单个或多个统计项的请求次数情况,可选值:Object、Referer、IP、UA,返回TOP200数据,非必填
})
if err != nil {
panic(err)
}
fmt.Println("结果:\n", awsutil.StringValue(resp))
}有关桶用量详情及业务分析查询详情,请参见 QueryKs3Data。
纯净模式
