對於以用量計費的 SaaS 產品,Google Cloud Marketplace 會將用量歸因於單一Google Cloud 專案,並由 usageReportingId
欄位指定。在某些情況下,SaaS 產品可能會在客戶機構內廣泛共用,並用於許多客戶專案。為支援更具體的成本歸因,建議以用量為準的 SaaS 產品在用量報表的作業中加入選用的 userLabels
欄位。
如果您的服務已支援資源標籤概念,建議您在使用率報表中轉寄這些標籤。標籤必須符合語法規定。
用量標籤
Cloud Marketplace 保留下列標籤。您可以使用這些標籤,在服務平台中識別其他用途的額外背景資訊。建議您在預設情況下將這些標籤納入用量報表。
標籤鍵 | 標籤值 | 說明> |
---|---|---|
cloudmarketplace.googleapis.com/resource_name | USER_SUPPLIED | 與用量指標相關聯的資源名稱。 |
cloudmarketplace.googleapis.com/container_name | USER_SUPPLIED | 資源容器的名稱。 |
標籤會轉送至 Cloud Billing 費用管理工具,包括費用報表和帳單匯出。
使用標籤示例
假設貴機構提供名為 SaaS 儲存空間解決方案的儲存空間產品。
客戶 Carl 已為其Google Cloud 專案 e-commerce-website
購買您的儲存空間服務,以便代管電子商務網站的 user_profiles_db
和 products_db
資料庫:
user_profiles_db
包含造訪 Carl 網站的使用者相關資訊。products_db
包含 Carl 在網站上販售的產品資訊。
如果您想向 Carl 提供詳細的費用明細,可以使用 userLabels
鍵/值組合,分別回報每個資料庫的費用。
舉例來說,如要回報歸因於 Carl 的 products_db
儲存空間用量所產生的費用,您可以傳送下列報表,指出 Carl 的 products_db
儲存空間費用為 100 個單位:
operation = {
'operationId': '<UUID>',
'operationName': 'db-total-storage',
'consumerId': 'project:carl_website',
'startTime': '<Timestamp>',
'endTime': '<Timestamp>',
'metricValues': [{
'int64Value': 100,
}],
'userLabels': {
'cloudmarketplace.googleapis.com/container_name': 'e-commerce-website',
'cloudmarketplace.googleapis.com/resource_name': 'products_db'
}
}
service.services().report(
serviceName=service_name, body={
'operations': [operation]
}).execute()
在本例中,service_name
是 Carl Google Cloud專案的專案 ID。
如需 userLabels
使用方式的詳細範例,請參閱 SaaS 程式碼研究室。