すべてのプロダクト
Search
ドキュメントセンター

Object Storage Service:バケットのストレージ使用状況のクエリ (Go SDK V2)

最終更新日:Nov 09, 2025

このトピックでは、特定の Object Storage Service (OSS) バケットのストレージ使用状況、およびバケット内のさまざまなストレージタイプのオブジェクトの数とストレージ使用状況をクエリする方法について説明します。

使用上の注意

  • このトピックのサンプルコードでは、中国 (杭州) リージョンのリージョン ID cn-hangzhou を使用します。デフォルトでは、パブリックエンドポイントを使用してバケット内のリソースにアクセスします。同じリージョン内の他の Alibaba Cloud サービスからバケットリソースにアクセスする場合は、内部エンドポイントを使用します。OSS のリージョンとエンドポイントの詳細については、「リージョンとエンドポイント」をご参照ください。

  • このトピックでは、アクセス資格情報は環境変数から取得されます。アクセス資格情報の設定方法の詳細については、「アクセス資格情報の設定」をご参照ください。

メソッド

func (c *Client) GetBucketStat(ctx context.Context, request *GetBucketStatRequest, optFns ...func(*Options)) (*GetBucketStatResult, error)

リクエストパラメーター

パラメーター

タイプ

説明

ctx

context.Context

リクエストのコンテキスト。リクエストの合計期間を指定するために使用できます。

request

*GetBucketStatRequest

バケット名など、特定の API 操作のパラメーターを指定します。詳細については、「GetBucketStatRequest」をご参照ください。

optFns

...func(*Options)

オプション。操作レベルのパラメーターです。詳細については、「Options」をご参照ください。

レスポンスパラメーター

レスポンスパラメーター

タイプ

説明

result

*GetBucketStatResult

操作への応答。このパラメーターは、err の値が nil の場合に有効です。詳細については、「GetBucketStatResult」をご参照ください。

err

error

リクエストのステータス。リクエストが失敗した場合、err の値は nil にはなりません。

次のサンプルコードは、バケットのストレージ使用状況をクエリする方法の例を示しています。

package main

import (
	"context"
	"flag"
	"log"

	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss"
	"github.com/aliyun/alibabacloud-oss-go-sdk-v2/oss/credentials"
)

// グローバル変数を指定します。
var (
	region     string // リージョン。
	bucketName string // バケット名。
)

// コマンドラインパラメーターを初期化するために使用される init 関数を指定します。
func init() {
	flag.StringVar(&region, "region", "", "The region in which the bucket is located.")
	flag.StringVar(&bucketName, "bucket", "", "The name of the bucket.")
}

func main() {
	// コマンドラインパラメーターを解析します。
	flag.Parse()

	// バケット名が空かどうかを確認します。
	if len(bucketName) == 0 {
		flag.PrintDefaults()
		log.Fatalf("invalid parameters, bucket name required")
	}

	// リージョンが空かどうかを確認します。
	if len(region) == 0 {
		flag.PrintDefaults()
		log.Fatalf("invalid parameters, region required")
	}

	// デフォルト設定をロードし、資格情報プロバイダーとリージョンを指定します。
	cfg := oss.LoadDefaultConfig().
		WithCredentialsProvider(credentials.NewEnvironmentVariableCredentialsProvider()).
		WithRegion(region)

	// OSS クライアントを作成します。
	client := oss.NewClient(cfg)

	// バケットのストレージ使用状況をクエリするリクエストを作成します。
	request := &oss.GetBucketStatRequest{
		Bucket: oss.Ptr(bucketName), // バケット名。
	}

	// バケットのストレージ使用状況をクエリするリクエストを実行し、結果を処理します。
	result, err := client.GetBucketStat(context.TODO(), request)
	if err != nil {
		log.Fatalf("failed to get bucket stat %v", err)
	}

	// バケットのストレージ使用状況を表示します。
	log.Printf("get bucket stat result:%#v\n", result)
}

一般的なストレージ容量情報

パラメーター

説明

Storage

バケットの合計ストレージ使用量。単位: バイト。

ObjectCount

バケット内のオブジェクトの総数。

MultipartUploadCount

開始されたが、完了またはキャンセルされていないマルチパートアップロードタスクの数。

LiveChannelCount

バケット内の LiveChannel の数。

LastModifiedTime

取得した情報が最後に変更された時刻。値は UNIX タイムスタンプです。単位: 秒。

StandardStorage

バケット内の標準ストレージオブジェクトのストレージ使用量。単位: バイト。

StandardObjectCount

バケット内の標準ストレージオブジェクトの数。

InfrequentAccessStorage

バケット内の低頻度アクセス (IA) オブジェクトの課金対象ストレージ使用量。単位: バイト。

InfrequentAccessRealStorage

バケット内の IA オブジェクトの実際のストレージ使用量。単位: バイト。

InfrequentAccessObjectCount

低頻度アクセスストレージのオブジェクト数

ArchiveStorage

バケット内のアーカイブオブジェクトの課金対象ストレージ使用量。単位: バイト。

ArchiveRealStorage

バケット内のアーカイブオブジェクトの実際のストレージ使用量。単位: バイト。

ArchiveObjectCount

バケット内のアーカイブオブジェクトの数。

ColdArchiveStorage

バケット内のコールドアーカイブオブジェクトの課金対象ストレージ使用量。単位: バイト。

ColdArchiveRealStorage

バケット内のコールドアーカイブオブジェクトの実際のストレージ使用量。単位: バイト。

ColdArchiveObjectCount

バケット内のコールドアーカイブオブジェクトの数。

関連ドキュメント

  • バケットに関する情報をクエリするために使用される完全なサンプルコードについては、GitHub をご参照ください。

  • バケットに関する情報をクエリするために呼び出すことができる API 操作の詳細については、「GetBucketStat」をご参照ください。