Para produtos SaaS baseados no uso, o Google Cloud Marketplace atribui o uso a um único
projeto do Google Cloud, especificado pelo campo usageReportingId
. Em alguns
cenários, um produto de SaaS pode ser compartilhado de forma ampla na organização de um cliente e usado em vários projetos do cliente. Para
aceitar a atribuição de custos mais específica, recomendamos que os produtos SaaS baseados em uso incluam o campo userLabels
opcional no relatório de uso
operação.
Se o serviço já oferece suporte a um conceito de rótulos de recursos, recomendamos que você os encaminhe nos relatórios de uso. Os rótulos precisam estar em conformidade com os requisitos de sintaxe.
Rótulos de uso
O Cloud Marketplace reserva os rótulos a seguir. Use esses identificadores para identificar mais contexto para uso na sua plataforma de serviço. Recomendamos que você inclua esses rótulos nos relatórios de uso por padrão.
Chave do rótulo | Valor da etiqueta | Descrição> |
---|---|---|
cloudmarketplace.googleapis.com/resource_name | USER_SUPPLIED | O nome do recurso associado a uma métrica de uso. |
cloudmarketplace.googleapis.com/container_name | USER_SUPPLIED | O nome de um contêiner de recursos. |
Os rótulos são encaminhados para as ferramentas de gerenciamento de custos do Cloud Billing, incluindo relatórios de custos e exportações de faturamento.
Exemplo de rotulagem de uso
Para este exemplo, imagine que sua organização ofereça um produto de armazenamento chamado Soluções de armazenamento de SaaS.
Um cliente, Carl, comprou sua oferta de armazenamento para o projeto e-commerce-website
do Google Cloud, para hospedar os bancos de dados user_profiles_db
e products_db
do site de e-commerce dele:
user_profiles_db
contém informações sobre os usuários que visitam o site de Carl.products_db
contém informações sobre os produtos que Carl vende no site.
Se você quiser fornecer a Carl um detalhamento de custos do uso, use o par de chave-valor userLabels
para informar o custo de uso de cada banco de dados separadamente.
Por exemplo, para informar o custo atribuído ao uso de armazenamento products_db
de
Carl, você pode enviar o relatório a seguir, que indica que o armazenamento
products_db
de Carl está custando 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()
Neste exemplo, service_name
é o ID do projeto do Google Cloud de Carl.
Para conferir um exemplo mais detalhado de como usar userLabels
, consulte o
codelab de SaaS.