FOCUS™ 是 FinOps Open Cost and Usage Specification 的缩写,它是一个技术规范,定义了一种标准化格式,用于统一不同云服务商的成本和用量数据。这一规范旨在简化跨云供应商的计费数据管理,有效降低了处理不同云服务商计费数据时的复杂性和工作量,推动数据驱动决策并最大化云的商业价值。有关FOCUS™ 开源规范的更多信息,请参见 FOCUS 官网。
FOCUS 功能介绍
在多云环境中,不同云服务商的计费方式和账单格式各异,这给统一管理和分析带来了挑战。FOCUS 帮助您标准化成本数据,使您能够高效监控、分析和优化云资源,提升资源利用率和业务敏捷性。


FOCUS 为您在多云环境中的成本和使用情况数据提供了一种标准化格式,将不同云服务商的账单数据转换成统一格式,简化了复杂的数据处理流程。
FOCUS 的标准化数据格式协助您进行成本分账、预算管理和资源优化等 FinOps 关键操作,实现跨云服务商的财务管理和成本控制,帮助您轻松推动数据驱动的决策,从而最大化云服务的商业价值。
FOCUS 账单导出步骤
腾讯云提供定期将账单数据以文件形式存储至您指定的对象存储(Cloud Object Storage,COS)存储桶的功能,开启账单存储至 COS 功能获取您的 FOCUS 账单。
1. 在 账单概览 页面,将账单存储设置为开启 
。



2. 设置存储信息,根据实际需求,选择需要的 FOCUS 账单存储到 COS 桶的文件类型,将其存到特定的 COS 桶。如果您存在集团子账号,也可以选择子账号的账单文件,将其存至您的 COS 桶中。


腾讯云 FOCUS 1.0字段说明
本节提供关于 FOCUS 1.0的字段描述,腾讯云 FOCUS 1.0可能与 FOCUS 1.0官方要求的规范存在差距,详细说明请参见 FOCUS 1.0 差异说明。我们不建议您使用腾讯云 FOCUS 1.0用于生产环境,请使用腾讯云 明细账单 验证您的成本数据。
说明:
带有腾讯云指定列的 FOCUS 1.0与 FOCUS 1.0官方要求的规范存在差距。
腾讯云 FOCUS 1.0包含 FOCUS 规范 v1.0中的部分字段,FOCUS 1.0不支持的字段展示为空,另外附加腾讯云专有的四列,分别是x_ComponentName、x_ComponentType、x_ExportTime、x_OwnerAccountID。
FOCUS 列名 | 字段描述 | 数据类型 | 允许为空 | 腾讯云 FOCUS 1.0是否支持 |
AvailabilityZone | 可用区是服务提供商指定的标识符,用于识别区域内物理上隔离的区域,提供高可用性和容错能力 | String | 是 | 是 |
BilledCost | 用于开具发票的费用,包含所有降低的费用和折扣的影响,但不包含未来摊销费用 | Decimal | 是 | 是 |
BillingAccountId | 账号 ID 是由服务提供商分配给账号的唯一标识符 | String | 否 | 是 |
BillingAccountName | 账号名称是分配给账号的显示名称 | String | 是 | 是 |
BillingCurrency | 资源或服务费用的计费货币 | String | 否 | 是 |
BillingPeriodEnd | 账单周期的结束日期和时间 | Datetime | 否 | 是 |
BillingPeriodStart | 账单周期的开始日期和时间 | Datetime | 否 | 是 |
CapacityReservationId | 服务提供商分配给容量预留资源的唯一标识符 | String | 是 | 是 |
CapacityReservationStatus | 用于描述该费用是代表CapacityReservationId列中标识的容量预留的消耗,还是容量预留未被使用时的费用 | String | 是 | 否,展示为空 |
ChargeCategory | 费用类别是账单行所代表费用类型的最高级别分类 | String | 否 | 是 |
ChargeClass | 费用类别表示该行是常规费用还是对一个或多个先前费用的更正 | String | 是 | 是 |
ChargeDescription | 费用描述提供了行的高级上下文 | String | 是 | 是 |
ChargeFrequency | 费用频率指示费用发生的频率 | String | 否 | 是 |
ChargePeriodEnd | 收费周期的结束日期和时间 | Datetime | 否 | 是 |
ChargePeriodStart | 收费周期的开始日期和时间 | Datetime | 否 | 是 |
CommitmentDiscountCategory | 基于承诺的折扣是基于使用数量还是成本(即“支出”) | String | 是 | 是,仅支持 RI、SP |
CommitmentDiscountId | 承诺折扣 ID 是由服务提供商分配给基于承诺的折扣的标识符 | String | 是 | 是,仅支持 RI、SP |
CommitmentDiscountName | 承诺折扣名称是分配给基于承诺的折扣的显示名称 | String | 是 | 是,仅支持 RI、SP |
CommitmentDiscountStatus | 指示费用是否对应于已使用或未使用的承诺折扣 | String | 是 | 是,仅支持 RI、SP |
CommitmentDiscountType | 承诺折扣类型是由服务提供商分配的名称,用于标识该行的基于承诺的折扣类型 | String | 是 | 否,展示为空 |
ConsumedQuantity | 根据消耗单位使用或购买的给定资源或服务的数量 | Decimal | 是 | 是 |
ConsumedUnit | 消耗单位是服务提供商分配的衡量单位,表示提供商如何衡量与资源或服务关联的给定 SKU 的使用情况 | String | 是 | 是 |
ContractedCost | 合同成本表示合同单价乘以相应的定价数量计算出的成本 | Decimal | 否 | 是 |
ContractedUnitPrice | 相关 SKU 的单个定价单位的约定单价,包括任何协商折扣,但不包括协商的承诺折扣或任何其他折扣 | Decimal | 是 | 是 |
EffectiveCost | 包含所有降低的费用和折扣的影响,且包含未来的摊销费用 | Decimal | 否 | 否,展示为空 |
InvoiceIssuerName | 发票开具者是负责为资源或服务开具发票的实体 | String | 否 | 是 |
ListCost | 刊例单价乘以定价数量而计算出的成本 | Decimal | 否 | 是 |
ListUnitPrice | 服务提供商发布的相关 SKU 的单个定价单位,不包括任何折扣 | Decimal | 是 | 是 |
PricingCategory | 资源或服务使用或购买时使用的定价模型 | String | 是 | 是 |
PricingQuantity | 根据定价单位计算出的与使用或购买的资源或服务相关的给定 SKU 的数量 | Decimal | 是 | 是 |
PricingUnit | 定价单位 | String | 是 | 是 |
ProviderName | 提供资源或服务可供购买的实体 | String | 否 | 是 |
PublisherName | 发布者是生产所购买的资源或服务的实体 | String | 否 | 是 |
RegionId | 提供商为配置资源或提供服务的地理区域分配的标识符 | String | 是 | 是 |
RegionName | 配置资源或提供服务的地理区域的名称 | String | 是 | 是 |
ResourceId | 提供商指定的资源标识符 | String | 是 | 是 |
ResourceName | 分配给资源的显示名称 | String | 是 | 是 |
ResourceType | 费用适用的资源类型 | String | 是 | 否,展示为空 |
ServiceCategory | 基于服务核心功能的服务的第一级分类 | String | 否 | 否,展示为空 |
ServiceSubcategory | 基于服务核心功能的服务类别二级分类 | String | 否 | 是 |
ServiceName | 所购买产品的显示名称 | String | 否 | 是 |
SkuId | 唯一标识符,用于组织一个或多个 SKU 价格中常见的属性 | String | 是 | 否,展示为空 |
SkuPriceId | 用于计算费用的单价的唯一标识符 | String | 是 | 否,展示为空 |
SubAccountId | 服务提供商分配给子账号的唯一标识符 | String | 是 | 是 |
SubAccountName | 分配给子账号的显示名称 | String | 是 | 是 |
Tags | JSON | 是 | 是 | |
x_ComponentName | 用户购买的产品或服务,所包含的具体组件 | String | 否 | 腾讯云附加列 |
x_ComponentType | 用户购买的产品或服务对应的组件大类 | String | 否 | 腾讯云附加列 |
x_ExportTime | 账单行转换为 FOCUS 格式的时间 | Datetime | 否 | 腾讯云附加列 |
x_OwnerAccountID | 实际使用资源的账号 ID | String | 否 | 腾讯云附加列 |
腾讯云 FOCUS 1.0字段转换说明
将腾讯云账单数据转换为 FinOps 开放成本和使用情况规范(FOCUS 规范 v1.0)的转换机制,采用如下表格所示的逻辑进行自动化转化,确保账单数据能够高效、准确地转换为 FOCUS 格式供您使用。
FOCUS 列 | 腾讯云账单列 | 转换逻辑 |
AvailabilityZone | Availability Zone | 无 |
BilledCost | 现金支付(元) | 若本条不是券,则取现金支付(元)。 若本条是券,则取 null。 |
BillingAccountId | Payer Account ID | 无 |
BillingAccountName | - | 无 |
BillingCurrency | Currency | 无 |
BillingPeriodEnd | Bill Month | 由 Bill Month 字段转换,数值上是开区间不包含,格式上转换为 ISO 8601格式零时区(UTC)时间。 举例说明: 如果 Bill Month 是2024-12,那么 BillingPeriodEnd 对应的是东八时区2025-01-01T00:00:00+08:00,转换为零时区是2024-12-31T16:00:00Z。 |
BillingPeriodStart | Bill Month | 由 Bill Month 字段转换,数值上是闭区间包含,格式上转换为 ISO 8601格式零时区(UTC)时间。 举例说明: 如果 Bill Month 是2024-12,那么 BillingPeriodEnd 对应的是东八时区2024-12-01T00:00:00+08:00,转换为零时区是2024-11-30T16:00:00Z。 |
CapacityReservationId | Instance ID | 由 Instance ID 字段转换。 如果该行是容量预留的费用,那么 CapacityReservationId 取 Instance ID。 如果该行不是容量预留的费用,那么 CapacityReservationId 展示为空。 |
CapacityReservationStatus | 本版本不支持 | 展示为空。 |
ChargeCategory | Transaction Type | 由 Transaction Type 转换,分为 Usage、Purchase、Tax、Credit、Adjustment。 |
ChargeClass | Transaction Type | 由 Transaction Type 转换,分为 Correction 和空。 |
ChargeDescription | Billing rule | 无 |
ChargeFrequency | Transaction Type | 由 Transaction Type 转换,分为 One-time、Recurring、Usage-based。 |
ChargePeriodEnd | Usage End Time | 由 Usage End Time 转换,数值上是开区间不包含,格式上转换为 ISO 8601格式零时区(UTC)时间。 举例说明: 如果 Usage Start Time 是2024/12/2 10:40(实际时间为10:40:46),那么 ChargePeriodEnd 对应的是东八时区2024-12-02T10:40:47+08:00,转换为零时区是2024-12-02T02:40:47Z。 |
ChargePeriodStart | Usage Start Time | 由 Usage Start Time 转换,数值上是闭区间包含,格式上转换为 ISO 8601格式零时区(UTC)时间。 举例说明: 如果 Usage Start Time 是2024/12/2 10:40:46,那么 ChargePeriodStart 对应的是东八时区2024-10-17T16:39:57+08:00,转换为零时区是2024-10-17T08:39:57Z。 |
CommitmentDiscountCategory | - | 新增字段。 如果该行是节省计划购买的费用或者被节省计划抵扣产品的费用,那么 CommitmentDiscountCategory 取 Spend。 如果该行是预留实例购买的费用或者被预留实例抵扣产品的费用,那么 CommitmentDiscountCategory 取 Usage。 |
CommitmentDiscountId | Instance ID | 由 Instance ID 转换。 如果该行是节省计划购买的费用,那么 CommitmentDiscountId 取节省计划包的 Instance ID。 如果该行是预留实例购买的费用或者被预留实例抵扣产品的费用,那么 CommitmentDiscountCategory 取预留实例的 Instance ID。 |
CommitmentDiscountName | Instance Type | 由 Instance Type 转换。 如果该行是节省计划购买的费用或者被节省计划抵扣产品的费用,那么 CommitmentDiscountCategory 取 Savings Plan。 如果该行是预留实例购买的费用或者被预留实例抵扣产品的费用,那么 CommitmentDiscountCategory 取 Standard RI。 |
CommitmentDiscountStatus | - | 新增字段。 如果该行是被节省计划或者预留实例抵扣产品的费用,那么 CommitmentDiscountStatus 取 Used。 |
CommitmentDiscountType | 本版本不支持 | 展示为空。 |
ConsumedQuantity | Component Usage、Usage Duration | 由 Component Usage、Usage Duration 转换,公式为 ConsumedQuantity = Component Usage × Usage Duration。 举例说明: 如果 Component Usage 为1,Usage Duration 为2,那么 ConsumedQuantity 最终展示为2。 |
ConsumedUnit | Component Usage Unit、Duration Unit | 由 Component Usage Unit、Duration Unit 转换,展示形式为 Component Usage Unit/Duration Unit,并去除单位中用量/时长的数值,使得系数化一。 举例说明: 如果 Component Usage Unit 为2Core,Duration Unit 为 Second,那么ConsumedUnit 最终展示为 Core/Second。 |
ContractedCost | 优惠后总价(元)或优惠券支付(元) | 若本条不是券, 则取优惠后总价(元)- 优惠券支付(元)。 若本条是券,取优惠券支付(元)。 |
ContractedUnitPrice | Component Contracted Price | 如果该行 Cost Category 不是 Tax 或 Credit,则取值为 Component Contracted Price,并除单位中用量/时长的数值; 如果该行 Cost Category 是 Tax 或 Credit,展示为空; 举例说明: 如果 Component Price Measurement Unit 为 USD/2Core/Second,Component Contracted Price 为100,那么 ContractedUnitPrice 展示为50。 |
EffectiveCost | 本版本不支持 | 展示为空。 |
InvoiceIssuerName | - | 与费用账单的 PDF 账单中的我方主体保持一致。 举例说明:Tencent Cloud LLC. |
ListCost | Original Cost | 如果该行 Cost Category 不是 Tax 或 Credit,则取值为 Original Cost。 如果该行 Cost Category 是 Tax 或 Credit,则展示为空。 公式:ListCost = ListUnitPrice × PriceQuantity |
ListUnitPrice | Component List Price | 如果该行 Cost Category 不是 Tax 或 Credit,则取值为 Component List Price,并除单位中用量/时长的数值。 如果该行 Cost Category 是 Tax 或 Credit,展示为空。 举例说明: 如果 Component Price Measurement Unit 是 USD/2Core/3600Second,Component List Price 是7200, 那么 ListUnitPrice 是7200/(2×3600)=1 |
PricingCategory | - | 如果该行 Cost Category 不是 Tax 或 Credit,默认展示为 Standard。 如果该行 Cost Category 是 Tax 或 Credit,展示为空。 |
PricingQuantity | Component Usage、Usage Duration | 如果该行 Cost Category 不是 Tax 或 Credit,则取值为 Component Usage × Usage Duration。 如果该行 Cost Category 是 Tax 或 Credit,展示为空。 |
PricingUnit | Component Usage Unit、Duration Unit | 如果该行 Cost Category 不是 Tax 或 Credit,则展示为 Component Usage Unit/Duration Unit,并去除单位中用量/时长的数值,使得系数归一化。 如果该行 Cost Category 是Tax 或 Credit,展示为空。 举例说明: 如果 Component Usage 是2Core,Duration Unit 是 Second,那么 PricingUnit是 Core/Second。 |
ProviderName | - | 默认展示为 Tencent Cloud。 |
PublisherName | - | 默认展示为 Tencent Cloud。 |
RegionId | Region ID | 无 |
RegionName | Region | 无 |
ResourceId | InstanceID | 无 |
ResourceName | InstanceName | 无 |
ResourceType | 本版本不支持 | 展示为空。 |
ServiceCategory | 本版本不支持 | 展示为空。 |
ServiceSubcategory | Subproduct Name | 无 |
ServiceName | Product Name | 无 |
SkuId | 本版本不支持 | 展示为空。 |
SkuPriceId | 本版本不支持 | 展示为空。 |
SubAccountId | Operator Account ID | 无 |
SubAccountName | - | 新增字段。 |
Tags | Tag、Project Name | 合并 Tag 和 Project Name。 举例说明: [{"key": "GameProject","value": "SuperMario"}, {"key": "teamid","value": "Group001"}, {"key": "ProjectName","value": "default"}] |
x_ComponentName | Component Name | 无 |
x_ComponentType | Component Type | 无 |
x_ExportTime | - | 无 |
x_OwnerAccountID | Owner Account ID | 无 |