用量的计量 - AWS Marketplace

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

用量的计量

对于软件即服务 (SaaS) 订阅,您可以计量所有使用情况,然后 AWS 根据您提供的计量记录向客户计费。对于 SaaS 合同,您只能计量客户合同权利中的用量。当您的应用程序计量客户的使用量时,您的应用程序会 AWS 提供累积的使用量。您的应用程序根据您在创建产品时定义的定价维度进行计量,例如传输的 GB 数据量或者给定小时内扫描的主机数。例如,如果您根据发送到应用程序的数据量收费,则可以测量数据量并每小时发送一次相应的计量记录。 AWS 使用计量数据以及您在创建产品时提供的价格来计算客户的账单。

注意

或者,您可以将用量按您跟踪的属性分配。这些属性作为标签展示给买家。这些标签允许买家按标签值查看按用量划分的费用。例如,如果您按用户收费,并且用户具有 Department 属性,则可以使用键为 Department 的标签创建用量分配,每个值一个分配。这不会更改您报告的价格、维度或总用量,但允许您的客户按与您的产品相应类别查看其成本。有关更多信息,请参阅 供应商计量标记(可选)

按小时计量

我们建议您以 AWS 每小时为单位向所有客户报告使用情况,每次最多 25 个。这使客户能够尽可能精细地了解其使用情况和成本。如果您在超过一小时的时间段(例如一天)内汇总使用量,请注意以下注意事项。

  • AWS 只有在收到您的计量记录后,才能向客户开具产品使用费。您有责任确保已成功发送并收到您的产品的计量记录。您可以使用 AWS CloudTrail 来验证您发送的一条或多条记录是否准确。您还可以使用这些信息来执行一段时间的审计。有关更多信息,请参阅 使用记录 AWS Marketplace 计量API呼叫 AWS CloudTrail

  • 如果这是定价模式为 “订阅”(不是定价模式 “合同” 或 “消费合同”)的SaaS,则买方可以随时取消订阅。当买家发起取消订阅操作时,卖家将收到unsubscribe-pending通知,并有 1 小时的时间将所有未报告的使用情况发送到最终通知之前。unsubscribe-success第二次通知之后的任何内容都将不予兑现。另外两种定价模式根据订阅时间设定了持续时间,买方无法在订阅期间取消订阅。他们只能关闭自动续订。如果不是自动续订,则在该期限结束时会发送相同的通知。

  • 如果您不按小时发送计量记录,并且应用程序或网络出现故障,则您的记录将进一步落后。如果在订阅到期后恢复应用程序或网络中断,则可能会导致未报告的使用情况。

  • 即使没有使用量可供报告,您也可以继续每小时发送一次计量记录,如果该小时没有使用量可供报告,则记录的数量为 0。请注意,在您报告买家使用维度(0 或以上)后,您无法修改记录。因此,最佳做法是报告前一小时的使用情况。在整个AWS账单周期中,报告的使用情况可在买家的 Billing and Billing and Cost Managem ent 控制台中查看。控制台在单独的行项目中显示产品的每个维度,包括该账单周期或迄今为止消耗的总单位数和该单项消费的总成本,即使维度价格为每单位0美元。如果启用,AWS成本和使用情况报告 (CUR) 将显示此详细信息,包括每单位费率。这些报告不是实时更新的。

  • 在发布期间, AWS Marketplace 运营团队将在允许发布产品之前测试 SaaS 应用程序是否成功发送了计量记录。通常,该团队将对 SaaS 进行模拟注册,并确认已收到计量记录。

注意

如果您的 SaaS 产品与其他以不同方式处理计量的 AWS 托管服务(例如 Amazon G SageMaker round Truth 或 AWS WAF)集成,则您无需与 AWS Marketplace 计量服务集成。您的产品只能在一个系统中进行计量,以避免向客户重复计费。请注意, AWS Marketplace 目前并未发布新 AWS WAF 产品。

将您的产品配置为计量用量

您可以使用 AWS Marketplace 计量服务中的BatchMeterUsage操作将计量记录传送到 AWS。记住以下内容:

  • 我们要求卖家通过 BatchMeterUsage 操作来使用批处理。

  • 我们按小时去除重复的计量请求。

    • 按照各产品/客户/小时/维度对请求去除重复项。

    • 您始终可以重试任何请求,但是,如果您计量了不同的数量,将按照原始数量计费。

    • 如果您针对同一个客户/维度/小时发送多个请求,则不会对记录进行汇总。

  • 如果买家订阅了您的产品,则卖家可以发送包含最多 6 小时的时间戳的计量记录。如果客户取消订阅,卖家必须在客户取消订阅后的 1 小时内发送计量记录。

  • BatchMeterUsage 有效负载不得超过 1MB。选择要在 BatchMeterUsage 请求中发送的用量记录数量,这样您就不会超过有效负载的大小。

  • AWSMarketplace 计量服务可在AWS 一般参考中的AWS Marketplace 端点和配额中 AWS 区域 列出。在您请求产品时,默认为 SaaS 计量产品启用美国东部(弗吉尼亚州北部)区域。如果您打算使用其他区域,请联系 AWS Marketplace 卖家运营团队团队。有关更多信息,请参阅BatchMeterUsage

有关代码示例,请参阅 SaaS 产品集成的代码示例

示例:主机扫描

您的产品对计算硬件进行分析以查找已知的安全漏洞。客户手动启动或安排对其亚马逊弹性计算云 (AmazonEC2) 实例的扫描。当产品执行这些扫描时,它会记录每小时扫描的唯一主机数。在此示例中,您的产品使用主机类别。您可以为扫描的主机类型声明多个维度。例如,您可以针对小型、中型和大型主机按不同的价格收费。

示例:日志分析

您的 SaaS 产品会汇总由客户产品生成的日志、报告趋势和异常。当客户将日志上传到您的产品时,您可以测量收到的数据量(度量单位为兆字节、千兆字节或千吉字节)。在每个小时的第 10 分钟,cron 任务读取每位客户在上个小时的这一用量。任务生成批处理报告,并使用 BatchMeterUsage 操作将报告发送到 AWS。在此示例中,您的产品使用数据别。您的产品也可以按任何给定小时内存储的日志数据量进行计量。在这种情况下,您的产品可以按两个维度进行计量:此小时内收到的数据量和此小时内存储的总数据量。您可以继续计量存储的数据,直到客户删除此数据或数据到期为止。

供应商计量标记(可选)

供应商计量标签可帮助独立软件供应商 (ISVs) 让购买者更精细地了解其软件使用情况,并可以帮助他们进行成本分配。

有许多方法可以标记买家的软件使用情况。一种方法是先询问买家他们希望在成本分配中看到什么。然后,您可以在为买家帐户跟踪的属性之间分配使用情况。属性的示例包括 Account IDBusiness UnitCost Centers,以及您的产品的其他相关元数据。这些属性作为标签展示给买家。使用标签,买家可以在 AWS 账单控制台(https://console.aws.amazon.com/billing/)中查看按标签值划分为使用量的费用。供应商计量标记不会更改您报告的价格、维度或总用量。它允许您的客户按您产品的相应类别查看成本。

在常见情形中,买家会通过一个 AWS 账户订阅您的产品。买家还有许多与同一产品订阅相关的用户。您可以使用具有 Account ID 键的标签创建用量分配,然后将用量分配给每个用户。在这种情况下,买家可以在其账单与成本管理控制台中激活 Account ID 标签并分析个人用户的使用情况。

卖家体验

卖家可以汇总具有相同标签集的资源的计量记录,而不是汇总所有资源的使用情况。例如,卖家可以构造包含不同的 UsageAllocations 存储桶的计量记录。每个存储桶代表一组标签的 UsageQuantity,例如 AccountIdBusinessUnit

在下图中,资源 1 具有一组唯一的 AccountIdBusinessUnit 标签,并作为单个条目出现在计量记录中。

资源 2资源 3 都具有相同的 AccountId 标签 2222 和相同的 BusinessUnit 标签 Operations。因此,它们在计量记录中合并为一个 UsageAllocations 条目。

Metering record showing resource usage allocation from three resources to two accounts.

卖家还可以将没有标签的资源组合成一个 UsageAllocation,然后将其作为 UsageAllocations 中的一个条目发送。

限制包括:

  • 标签数 – 5

  • UsageAllocations(基数)的大小 – 2500

  • 最大请求大小 – 1 MB

验证包括:

  • 标签键和值允许的字符 – a-zA-Z0-9+ -=._:\/@

  • UsageAllocation 列表中的最大标签数 – 5

  • 两个 UsageAllocations 的标签不能相同(也就是说,标签键和值的组合相同)。如果是这样的话,他们必须使用相同的 UsageAllocation

  • UsageAllocationAllocatedUsageQuantity 之和必须等于 UsageQuantity,即聚合用量。

  • 最大有效负载大小不能超过 1 MB。这包括输入属性键(例如,UsageRecordsAllocatedUsageQuantity、标签)。

    注意

    为确保您没有违反有效负载限制,请根据业务要求创建具有最大大小的示例请求对象,将该对象转换为JSON字符串,然后获取以字节为单位的大小。确保单个API呼叫不会突破 1 MB 的限制。例如。如果一个带有 1 UsageRecord 的请求的最大大小为 200 KB,则作为请求的一部分发送的内容不要超过 5 UsageRecords(200KB * 5 = 1MB)。

买家体验

下表显示了买家激活 AccountIdBusinessUnit 供应商标签后的买家体验示例。

在此示例中,买家可以在其成本使用报告中看到分配的用量。供应商计量标签使用前缀 “aws:marketplace:isv”。在账单与成本管理中,买家可以再成本分配标签下的 AWS生成的成本分配标签中激活它们。

成本使用报告的第一行和最后一行与卖家向 Metering Service 发送的内容相关(如 卖家体验 示例所示)。

成本使用报告(简化)
ProductCode 买家 UsageDimension UsageQuantity aws:marketplace:isv:AccountId aws:marketplace:isv:BusinessUnit
xyz 111122223333 网络:每 (GB) 检查一次 70 2222 操作
xyz 111122223333 网络:每 (GB) 检查一次 30 3333 财务
xyz 111122223333 网络:每 (GB) 检查一次 20 4444 IT
xyz 111122223333 网络:每 (GB) 检查一次 20 5555 市场营销
xyz 111122223333 网络:每 (GB) 检查一次 30 1111 市场营销

有关代码示例,请参阅 带有用量分配标签的 BatchMeterUsage 代码示例(可选)