Obtaining Bucket Storage Information
If you have any questions during development, post them on the Issues page of GitHub.
The storage information about a bucket includes the number of objects in and the used capacity of the bucket. You can call get_bucket_storage_info to obtain the bucket storage information.
Parameter Description
Field |
Type |
Mandatory or Optional |
Description |
---|---|---|---|
option |
The context of the bucket. For details, see Configuring option. |
Mandatory |
Bucket parameter |
capacity_length |
int |
Mandatory |
Cache size of the used capacity |
capacity |
char * |
Mandatory |
Used capacity |
object_number_length |
int |
Mandatory |
Cache size of the object number |
object_number |
char * |
Mandatory |
Cache of the object number |
handler |
obs_response_handler * |
Mandatory |
Callback function |
callback_data |
void * |
Optional |
Callback data |
Sample Code
static void test_get_bucket_storage_info(char *bucket_name) { // Create and initialize option. obs_options option; obs_status ret_status = OBS_STATUS_BUTT; init_obs_options(&option); option.bucket_options.host_name = "<your-endpoint>"; option.bucket_options.bucket_name = "<Your bucketname>"; // Hard-coded or plaintext AK/SK are risky. For security purposes, encrypt your AK/SK and store them in the configuration file or environment variables. In this example, the AK/SK are stored in environment variables for identity authentication. Before running this example, configure environment variables ACCESS_KEY_ID and SECRET_ACCESS_KEY. // Obtain an AK/SK pair on the management console. For details, see https://support.huaweicloud.com/intl/en-us/usermanual-ca/ca_01_0003.html. option.bucket_options.access_key = getenv("ACCESS_KEY_ID"); option.bucket_options.secret_access_key = getenv("SECRET_ACCESS_KEY"); // Define cache of the bucket capacity and cache of the object number. char capacity[OBS_COMMON_LEN_256] = {0}; char obj_num[OBS_COMMON_LEN_256] = {0}; // Set response callback function. obs_response_handler response_handler = { NULL, &response_complete_callback }; // Obtain bucket storage information. get_bucket_storage_info(&option, OBS_COMMON_LEN_256, capacity, OBS_COMMON_LEN_256, obj_num, &response_handler, &ret_status); if (ret_status == OBS_STATUS_OK) { printf("get_bucket_storage_info success,bucket=%s objNum=%s capacity=%s\n", bucket_name, obj_num, capacity); } else { printf("head bucket failed(%s).\n", obs_get_status_name(ret_status)); } }
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot