Prácticas recomendadas para los informes de uso

En el caso de los productos de SaaS basados en el uso, Google Cloud Marketplace atribuye el uso a un solo proyecto de Google Cloud, que se especifica en el campo usageReportingId. En algunos casos, un producto de SaaS se puede compartir de forma amplia dentro de la organización de un cliente y usarse en muchos de sus proyectos. Para habilitar la compatibilidad con una atribución de costos más específica, recomendamos que los productos de SaaS basados en el uso incluyan el campo opcional userLabels en su operación de informe de uso.

Si tu servicio ya admite el concepto de etiquetas de recursos, te recomendamos que reenvíes esas etiquetas en tus informes de uso. Las etiquetas deben cumplir con los requisitos de sintaxis.

Etiquetas de uso

Cloud Marketplace reserva las siguientes etiquetas. Puedes usar estas etiquetas para identificar contexto adicional para el uso dentro de tu plataforma de servicio. Te recomendamos que incluyas estas etiquetas en tus informes de uso de forma predeterminada.

Clave de etiquetaValor de etiquetaDescription>
cloudmarketplace.googleapis.com/resource_name USER_SUPPLIED Es el nombre del recurso asociado con una métrica de uso.
cloudmarketplace.googleapis.com/container_name USER_SUPPLIED Es el nombre de un contenedor de recursos.

Las etiquetas se reenvían a las herramientas de administración de costos de Facturación de Cloud, incluidos los informes de costos y las exportaciones de facturación.

Ejemplo de etiquetado de uso

En este ejemplo, imagina que tu organización ofrece un producto de almacenamiento llamado Soluciones de almacenamiento de SaaS.

Un cliente, Carl, compró tu oferta de almacenamiento para su proyecto de Google Cloud e-commerce-website, para alojar las bases de datos user_profiles_db y products_db de su sitio web de comercio electrónico:

  • user_profiles_db contiene información sobre los usuarios que visitan el sitio de Carl.
  • products_db contiene información sobre los productos que Carl vende en su sitio.

Si quieres proporcionarle a Carl un desglose detallado de los costos de su uso, puedes usar el par clave-valor userLabels para informar el costo de uso de cada base de datos por separado.

Por ejemplo, para informar el costo atribuido al uso de almacenamiento de products_db de Carl, puedes enviar el siguiente informe, que indica que el almacenamiento de products_db de Carl le cuesta 100 unidades:

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()

En este ejemplo, service_name es el ID del proyecto de Google Cloud de Carl.

Para ver un ejemplo más detallado del uso de userLabels, consulta el codelab de SaaS.