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

Object Storage Service:バケットのストレージ容量の取得 (Swift SDK)

最終更新日:Nov 30, 2025

このトピックでは、指定されたバケットのストレージ容量 (各ストレージクラスのオブジェクト数とストレージ容量を含む) を取得する方法について説明します。

注意事項

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

サンプルコード

次のコードを使用して、バケットのストレージ容量情報を取得できます。

import AlibabaCloudOSS
import Foundation

@main
struct Main {
    static func main() async {
        do {
            // バケットが配置されているリージョンを指定します。たとえば、中国 (杭州) の場合は、リージョンを cn-hangzhou に設定します。
            let region = "cn-hangzhou"
            // バケット名を指定します。
            let bucket = "yourBucketName"
            // オプション。OSS へのアクセスに使用するドメイン名を指定します。たとえば、中国 (杭州) の場合は、エンドポイントを https://oss-cn-hangzhou.aliyuncs.com に設定します。
            let endpoint: String? = nil

            // 環境変数から認証情報を読み込みます。事前に OSS_ACCESS_KEY_ID と OSS_ACCESS_KEY_SECRET を設定しておく必要があります。
            let credentialsProvider = EnvironmentCredentialsProvider()

            // OSS クライアントのパラメーターを設定します。
            let config = Configuration.default()
                .withRegion(region) // リージョンを設定します。
                .withCredentialsProvider(credentialsProvider) // 認証情報を設定します。
                
            // エンドポイントを設定します。
            if let endpoint = endpoint {
                config.withEndpoint(endpoint)
            }

            // OSS クライアントインスタンスを作成します。
            let client = Client(config)

            // バケットの統計情報を取得します。
            let result = try await client.getBucketStat(
                GetBucketStatRequest(
                    bucket: bucket
                )
            )

            // 操作結果を出力します。
            print("result:\n\(result)")

        } catch {
            // 例外をキャッチして処理します。
            print("error:\n\(error)")
        }
    }
}

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

パラメーター

説明

Storage

バケットの合計ストレージ容量 (バイト単位)。

ObjectCount

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

MultipartUploadCount

開始されたが、完了または中止されていないマルチパートアップロードの数。

LiveChannelCount

バケット内の LiveChannel の数。

LastModifiedTime

この呼び出しによってストレージ情報が取得された時刻。値は秒単位の UNIX タイムスタンプです。

StandardStorage

標準ストレージオブジェクトのストレージ容量 (バイト単位)。

StandardObjectCount

標準ストレージオブジェクトの数。

InfrequentAccessStorage

低頻度アクセスオブジェクトの課金対象ストレージ容量 (バイト単位)。

InfrequentAccessRealStorage

低頻度アクセスオブジェクトの実際のストレージ容量 (バイト単位)。

InfrequentAccessObjectCount

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

ArchiveStorage

アーカイブストレージオブジェクトの課金対象ストレージ容量 (バイト単位)。

ArchiveRealStorage

アーカイブストレージオブジェクトの実際のストレージ容量 (バイト単位)。

ArchiveObjectCount

アーカイブストレージオブジェクトの数。

ColdArchiveStorage

コールドアーカイブオブジェクトの課金対象ストレージ容量 (バイト単位)。

ColdArchiveRealStorage

コールドアーカイブオブジェクトの実際のストレージ容量 (バイト単位)。

ColdArchiveObjectCount

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

リファレンス

  • バケットに関する情報を取得するための完全なサンプルコードについては、「GitHub サンプル」をご参照ください。

  • バケットに関する情報を取得するための API 操作の詳細については、「GetBucketStat」をご参照ください。