このトピックでは、指定されたバケットのストレージ容量 (各ストレージクラスのオブジェクト数とストレージ容量を含む) を取得する方法について説明します。
注意事項
このトピックのサンプルコードでは、デフォルトで中国 (杭州) (リージョン 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」をご参照ください。