新しいバージョンのCost Managerは、データの正確性とリアルタイムのパフォーマンスを確保するためにTablestoreにデータを保存します。 新しいバージョンのCost Managerは、毎日完全なデータを自動的に更新します。 このトピックでは、新しいバージョンのCost Managerを使用する方法について説明します。
エントリーポイント
[ログアプリケーション] セクションで、[ビジネス分析] タブをクリックします。 [コストマネージャー] をクリックします。
カスタム解析をクリックします 。
構文の説明
基本構文
新しいバージョンのCost Managerの専用Tablestoreテーブルは、外部テーブルとしてCost Managerの専用Logstoreに関連付けられています。 外部テーブルを使用してのみ、課金データを照会できます。
Searchステートメント: 垂直バー (|) の前にアスタリスク (*) のみを指定できます。
分析ステートメント: 外部テーブルの名前はinstance_billとして固定されています。 すべてのクエリ条件をWHERE句で指定する必要があります。 例:
* | select xxx from instance_bill where xxx group by xxx limit xxx
次のクエリステートメントを実行して、Simple Log Serviceの1日の費用を照会します。
* |
select
date_trunc('day', __time__) as day,
sum(PretaxAmount) as cost
FROM instance_bill
where
productcode = 'sls'
group by
day
例1: 集計データのクエリ
次のクエリステートメントを実行して、Simple Log Serviceの総費用を取得します。
クエリ文
* | select sum(PretaxAmount) as cost FROM instance_bill where productcode = 'sls'
クエリと分析結果
例2: グループによるデータの照会
次のクエリステートメントを実行して、各サービスの費用を取得します。
クエリ文
* | select productcode, sum(PretaxAmount) as cost FROM instance_bill group by productcode
クエリと分析結果
例3: 比較分析を実行する
次のクエリステートメントを実行して、当月の費用と前月の費用を比較します。
クエリ文
* | SELECT diff [1] AS "Expenses of this month", diff [2] AS "Expenses of the previous month", diff [3] * 100 -100 as "Increased by (%)" FROM ( SELECT compare(amount, 2592000) as diff FROM ( SELECT sum(PretaxAmount) AS amount FROM instance_bill ) )
クエリと分析結果
例4: サービス内の請求可能な項目ごとにデータを分析する
次のクエリステートメントを実行して、Simple Log Serviceの各請求可能アイテムの費用と使用量をクエリします。
クエリ文
* | SELECT BillingItem, sum(PretaxAmount) AS "Expense", sum(Usage) as "Usage" FROM instance_bill where productcode = 'sls' GROUP by BillingItem
クエリと分析結果
例5: サービスのインスタンスごとにデータを分析する
次のクエリステートメントを実行して、Simple Log Serviceの各インスタンスの費用をクエリします。
クエリ文
* | SELECT InstanceID, sum(PretaxAmount) AS "Expense" FROM instance_bill where productcode = 'sls' GROUP by InstanceID
クエリと分析結果
例6: JOIN句と外部テーブルを使用してデータをクエリする
次のクエリステートメントを実行して、instance_billテーブルをカスタム外部テーブルに結合して課金データをクエリします。
この例では、instance_name_tableという名前のカスタム外部テーブルが使用されます。 カスタムテーブルは、instanceIDフィールドに基づいてinstance_billテーブル内のデータにinstanceNameフィールドをマップするために使用されます。
クエリ文
* | with t1 as ( select InstanceID, sum(PretaxAmount) as PretaxAmount FROM instance_bill ), t2 as ( select InstanceID, InstanceName FROM instance_name_table ) select t1.InstanceID, t1.PretaxAmount, t2.InstanceName FROM t1 left join t2 on t1.InstanceID = t2.InstanceID
請求データのフィールド
項目 | 説明 | 例 |
BillingDate | 課金サイクルです。 | 2022-11-06 |
BillingItem | 請求可能なアイテム。 | PUTリクエストを含むリクエスト数 |
BillingType | 課金方法です。 | その他 |
CostUnit | コスト単位。 | 割り当てられていない |
Currency | 通貨だ | CNY |
ReductedByCashCoupons | クーポンを使用して相殺される料金。 | 0.0 |
ReductedByCoupons | バウチャーを使用して相殺される料金。 | 0.0 |
ReductedByPrepaidCard | ストアドバリューカードを使用して相殺される料金。 | 0.0 |
ReductedByResourcePackage | リソースプランを使用して相殺される料金。 | 0 |
InstanceConfig | インスタンスの設定。 | なし |
InstanceID | インスタンスの ID です。 | me-east-1% 3Bstandard |
InstanceSpec | インスタンスの仕様。 | なし |
InternetIP | パブリック IP アドレスを設定します。 | なし |
IntranetIP | 内部IPアドレス。 | なし |
InvoiceDiscount | 割引額。 | 0.001 |
Item | 請求書のタイプ。 有効な値:
| PayAsYouGoBill |
ListPrice | 単価 | 1.020000 |
ListPriceUnit | 単位です。 | 10,000リクエストあたりのUSD |
NickName | インスタンスのエイリアス。 | test |
OutstandingAmount | 未決済の金額。 | 0.0 |
OwnerID | アカウントの ID です。 | 12 *** 3212 |
PaymentAmount | 現金で支払われる料金。 | 0.0 |
PretaxAmount | 支払い可能な金額。 | 0.0 |
PretaxGrossAmount | 元の価格。 | 0.005 |
ProductCode | サービスコードです。 | oss |
ProductDetail | サービスの詳細。 | OSS |
ProductName | サービス名。 | Object Storage Service |
ProductType | サービスタイプです。 | なし |
Region | 地域 | 中国 (上海) |
ResourceGroup | リソースグループ。 | なし |
ServicePeriod | 有効期間。 | 10800 |
SubscriptionType | 課金方法です。 有効な値:
| PayAsYouGo |
Tag | タグです。 | なし |
Usage | 使用法。 | 0.005000 |
UsageUnit | 使用単位。 | 10,000リクエスト |
Zone | ゾーンです。 | cn-shanghai-b |
次に何をすべきか
クエリが成功すると、クエリと分析の結果に基づいて、ダッシュボードのグラフにデータを表示できます。 詳細については、「データベースの作成」をご参照ください。