You need to enable JavaScript to run this app.
导航

数据统计

最近更新时间2023.10.16 10:34:12

首次发布时间2022.05.13 17:10:55

本文为您提供了服务端 Go SDK 的数据统计模块相关的 API 调用示例。主要包含:查询流量带宽用量、获取带宽流量、获取请求数、获取状态码和获取热点 URL 统计等。

初始化

使用前请先完成初始化,参考初始化

查询带宽用量

接口请求参数和返回参数详见 OpenAPI:查询带宽用量

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_DescribeVodDomainBandwidthData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.VodDescribeVodDomainBandwidthDataRequest{
                DomainList:        "your DomainList",
                DomainInSpaceList: "your DomainInSpaceList",
                StartTime:         "your StartTime",
                EndTime:           "your EndTime",
                Aggregation:       0,
                BandwidthType:     "your BandwidthType",
                Area:              "your Area",
        }

        resp, status, err := instance.DescribeVodDomainBandwidthData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

查询流量用量

接口请求参数和返回参数详见 OpenAPI:查询流量用量

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_DescribeVodDomainTrafficData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.VodDescribeVodDomainTrafficDataRequest{
                DomainList:        "your DomainList",
                DomainInSpaceList: "your DomainInSpaceList",
                StartTime:         "your StartTime",
                EndTime:           "your EndTime",
                Aggregation:       0,
                TrafficType:       "your TrafficType",
                Area:              "your Area",
        }

        resp, status, err := instance.DescribeVodDomainTrafficData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

查询存储用量

接口请求参数和返回参数详见 OpenAPI:查询存储用量

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_DescribeVodSpaceStorageData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.VodDescribeVodSpaceStorageDataRequest{
                SpaceList:   "your SpaceList",
                StartTime:   "your StartTime",
                EndTime:     "your EndTime",
                Aggregation: 0,
                Type:        "your Type",
        }

        resp, status, err := instance.DescribeVodSpaceStorageData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

查询转码用量

接口请求参数和返回参数详见 OpenAPI:查询转码用量

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_DescribeVodSpaceTranscodeData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.DescribeVodSpaceTranscodeDataRequest{
                SpaceList:       "your SpaceList",
                StartTime:       "your StartTime",
                EndTime:         "your EndTime",
                TranscodeType:   "your TranscodeType",
                Specification:   "your Specification",
                TaskStageList:   "your TaskStageList",
                Aggregation:     0,
                DetailFieldList: "your DetailFieldList",
        }

        resp, status, err := instance.DescribeVodSpaceTranscodeData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

查询转码详细数据

接口请求参数和返回参数详见 OpenAPI:查询转码详细数据

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_DescribeVodSpaceWorkflowDetailData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.DescribeVodSpaceWorkflowDetailDataRequest{
                Region:    "your Region",
                Space:     "your Space",
                StartTime: "your StartTime",
                EndTime:   "your EndTime",
                PageSize:  0,
                PageNum:   0,
        }

        resp, status, err := instance.DescribeVodSpaceWorkflowDetailData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

查询视频剪辑详细数据

接口请求参数和返回参数详见 OpenAPI:查询视频剪辑详细数据

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)


func Test_DescribeVodSpaceEditDetailData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.DescribeVodSpaceEditDetailDataRequest{
                Region:    "your Region",
                Space:     "your Space",
                StartTime: "your StartTime",
                EndTime:   "your EndTime",
                PageSize:  0,
                PageNum:   0,
        }

        resp, status, err := instance.DescribeVodSpaceEditDetailData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

查询截图用量

接口请求参数和返回参数详见 OpenAPI:查询截图用量

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_DescribeVodSnapshotData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.DescribeVodSnapshotDataRequest{
                SpaceList:       "your SpaceList",
                StartTime:       "your StartTime",
                EndTime:         "your EndTime",
                SnapshotType:    "your SnapshotType",
                TaskStageList:   "your TaskStageList",
                Aggregation:     0,
                DetailFieldList: "your DetailFieldList",
        }

        resp, status, err := instance.DescribeVodSnapshotData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

查询检测修复用量

接口请求参数和返回参数详见 OpenAPI:查询检测修复用量

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_DescribeVodSpaceDetectStatisData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.DescribeVodSpaceDetectStatisDataRequest{
                SpaceList:       "your SpaceList",
                StartTime:       "your StartTime",
                EndTime:         "your EndTime",
                DetectType:      "your DetectType",
                TaskStageList:   "your TaskStageList",
                Aggregation:     0,
                DetailFieldList: "your DetailFieldList",
        }

        resp, status, err := instance.DescribeVodSpaceDetectStatisData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

查询多媒体 AI 用量

接口请求参数和返回参数详见 OpenAPI:查询多媒体AI用量

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_DescribeVodSpaceAIStatisData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.DescribeVodSpaceAIStatisDataRequest{
                SpaceList:       "your SpaceList",
                StartTime:       "your StartTime",
                EndTime:         "your EndTime",
                MediaAiType:     "your MediaAiType",
                TaskStageList:   "your TaskStageList",
                Aggregation:     0,
                DetailFieldList: "your DetailFieldList",
        }

        resp, status, err := instance.DescribeVodSpaceAIStatisData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

查询智能字幕用量

接口请求参数和返回参数详见 OpenAPI:查询智能字幕用量

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_DescribeVodSpaceSubtitleStatisData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.DescribeVodSpaceSubtitleStatisDataRequest{
                SpaceList:       "your SpaceList",
                StartTime:       "your StartTime",
                EndTime:         "your EndTime",
                SubtitleType:    "your SubtitleType",
                TaskStageList:   "your TaskStageList",
                Aggregation:     0,
                DetailFieldList: "your DetailFieldList",
        }

        resp, status, err := instance.DescribeVodSpaceSubtitleStatisData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

获取带宽流量

接口请求参数和返回参数详见 OpenAPI:获取带宽流量

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_ListCdnUsageData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.VodListCdnUsageDataRequest{
                Domains:        "your Domains",
                Interval:       "your Interval",
                StartTimestamp: 0,
                EndTimestamp:   0,
                DataType:       "your DataType",
                Metric:         "your Metric",
                NeedDetail:     false,
                Area:           "your Area",
                Region:         "your Region",
                Isp:            "your Isp",
                Protocol:       "your Protocol",
                IpVersion:      "your IpVersion",
                BillingRegion:  "your BillingRegion",
        }

        resp, status, err := instance.ListCdnUsageData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

获取请求数

接口请求参数和返回参数详见 OpenAPI:获取请求数

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_ListCdnPvData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.VodListCdnPvDataRequest{
                Domains:        "your Domains",
                Interval:       "your Interval",
                StartTimestamp: 0,
                EndTimestamp:   0,
                DataType:       "your DataType",
        }

        resp, status, err := instance.ListCdnPvData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

获取状态码

接口请求参数和返回参数详见 OpenAPI:获取状态码

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_ListCdnStatusData(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.VodListCdnStatusDataRequest{
                Domains:        "your Domains",
                Interval:       "your Interval",
                StartTimestamp: 0,
                EndTimestamp:   0,
                DataType:       "your DataType",
                Metric:         "your Metric",
        }

        resp, status, err := instance.ListCdnStatusData(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

获取命中率

接口请求参数和返回参数详见 OpenAPI:获取命中率

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_ListCdnHitrateData(t *testing.T) {
			   instance := vod.NewInstance()
			   instance.SetCredential(base.Credentials{
			      AccessKeyID:     "your ak",
			      SecretAccessKey: "your sk",
			   })
			
			   query := &request.VodListCdnHitrateDataRequest{
			      Domains:        "your domain",
			      Interval:       "auto",
			      StartTimestamp: 1689414058,
			      EndTimestamp:   1689759658,
			      Metric:         "hitrate",
			      NeedDetail:     false,
			   }
			
			   resp, status, err := instance.ListCdnHitrateData(query)
			   fmt.Println(status)
			   fmt.Println(err)
			   fmt.Println(resp.String())
}

获取热点 URL 统计

接口请求参数和返回参数详见 OpenAPI:获取热点 URL 统计

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_ListCdnTopAccessUrl(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.VodListCdnTopAccessUrlRequest{
                Domains:        "your Domains",
                StartTimestamp: 0,
                EndTimestamp:   0,
                SortType:       "your SortType",
        }

        resp, status, err := instance.ListCdnTopAccessUrl(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}

获取热点统计数据

接口请求参数和返回参数详见 OpenAPI:获取热点统计数据

package vod

import (
        "fmt"
        "testing"

        "github.com/volcengine/volc-sdk-golang/base"
        "github.com/volcengine/volc-sdk-golang/service/vod"
        "github.com/volcengine/volc-sdk-golang/service/vod/models/request"
)

func Test_ListCdnTopAccess(t *testing.T) {
        instance := vod.NewInstance()
        instance.SetCredential(base.Credentials{
                AccessKeyID:     "your ak",
                SecretAccessKey: "your sk",
        })

        query := &request.VodListCdnTopAccessRequest{
                Domains:        "your Domains",
                StartTimestamp: 0,
                EndTimestamp:   0,
                SortType:       "your SortType",
                Item:           "your Item",
        }

        resp, status, err := instance.ListCdnTopAccess(query)
        fmt.Println(status)
        fmt.Println(err)
        fmt.Println(resp.String())
}