Updated on 2024-04-28 GMT+08:00

Enabling Data Storage

You can enable expenditure data storage by creating a bucket on Object Storage Service (OBS). Huawei Cloud will synchronize your bills to the designated bucket on OBS.

The data storage service takes effect the next day after you enable it.

For example, if you enabled the data storage service on February 10, 2024, you will receive the bills of February 10, 2024 on the next day.

Enabling Bill Subscription

  1. Create a bucket on OBS. For details about how to create a bucket, see Creating a Bucket.
  2. Log in to the Billing Center.
  3. Go to the Expenditure Data Storage page.
  4. Set the bucket name.

    If the bucket becomes invalid, expenditure data storage is automatically disabled.

  5. Click Verify.

    A message indicating that the verification is successful is displayed and all eligible bills are presented.

  6. Select the bills that you want to export and click Enable.

    Once authorized and verified, the files for your selected bills will be synchronized to your bucket on OBS every day.

    • Set Push

      If you select the check box, the expenditure data updated upon bill adjustments will be synchronized to your bucket on OBS.

    • Save Bills of Unified Accounting Members

      This field is available only to the master account with unified accounting.

      When this field is set to Yes, Huawei Cloud pushes bills of member accounts to the master account for unified accounting. If this field is set to No, Huawei Cloud does not push bills of member accounts to the master account.

  7. Click Get Code.
  8. Enter the received SMS verification code and click OK.

    You can click Close next to the object storage name to close expenditure data storage.

Downloading Subscribed Bills

  1. Choose Service List > Storage > Object Storage Service.
  2. Click the bucket name.

  3. In the navigation bar on the left, click Objects. You can view all files of the subscribed bills that have been exported.

    • Bills of the same type are sorted in descending order.
    • You can search for bills by bill name prefix. Example: Enter Spendings(ByResource)_201906 in the search box to view all resource bill files in June 2019.
    • Data generated each day for customers in the monthly settlement mode is estimated. It is suggested that these customers obtain the full bill of a month on the third day of the next month.

    After expenditure data storage is enabled, data listed in Table 1 will be automatically exported based on your selection.

    Table 1 Exported bills

    Bill

    Billing Period

    Data to Be Exported

    Filename Identifier

    Resource Expenditures

    Every day

    Resource expenditure data of the previous day

    Resource_Expenditures_YYYYMMDD

    Resource Bill

    Every day

    Current month (excluding the current day)

    Spendings (ByResource)_YYYYMMDD

    Third day of each month

    Last month (YYYYMMDD in the file name indicates the last day of the last month)

    Spendings (ByResource)_YYYYMMDD

  4. Select the bill you want to download and click Download in the Operation column.

Further Description

If you want to download subscribed bills every day, run the following script to set it up. After the setup is completed, the subscribed bills will be automatically downloaded.

The following code example is for reference only. You can make changes to it for development as needed.

#!/usr/bin/python
# -*- coding:utf-8 -*-
import string,os,sys,datetime
import commands
import json

#get date 
date = datetime.date.today()-datetime.timedelta(1)
str_date = date.strftime("%Y%m%d")

AK = ''
SK = ''
server = ''
bucketName = ''
#prefix="Consumedetails_"+str_date
prefix="Resource_Expenditures_"+str_date
print prefix

from com.obs.client.obs_client import ObsClient
# Constructs a obs client instance with your account for accessing OBS
obsClient = ObsClient(access_key_id=AK, secret_access_key=SK, server=server)

#find which billing
resp=obsClient.listObjects(bucketName,prefix)
#billing name
objectKey=resp.body.contents[0].key
localFileDir='/opt/huawei/zcm/data/'+objectKey
# Download the object to a file
print('Downloading an object to dir:' + localFileDir + '\n')
obsClient.getObject(bucketName, objectKey, downloadPath=localFileDir)

Description of parameters:

  • AK: access key ID on OBS. One AK maps to only one user but one user can have multiple AKs. The OBS system recognizes the users who access the system by their access key IDs. For details about how to obtain the AK and SK, see Obtaining Access Keys (AK and SK).
  • SK: secret access key on OBS. It is used to access OBS. Authentication information is generated for users based on their SKs and request header fields. An SK matches an AK.
  • server: domain name, which is the address of the bucket on the Internet. It can be used for scenarios where the bucket is accessed directly through the domain name, such as cloud application development and data sharing. You can obtain its value from "1" in Figure 1.
  • bucketName: name of the bucket used for the subscribed bills. You can obtain its value from "2" in Figure 1.
  • prefix: bills that need to be automatically downloaded.
    • "Resource_Expenditures_": Indicates resource expenditure records.
    • "Spendings (ByResource)_": Indicates the resource bill.
  • localFileDir: local directory for storing downloaded bill files.
    Figure 1 Obtaining parameters for automatically downloading subscribed bills