Abrechnungsmesswerte melden

Auf dieser Seite wird beschrieben, wie Sie mit Service Infrastructure verwaltete Dienste so konfigurieren, dass Daten zur Abrechnung an Cloud Billing gesendet werden. So können Dienstnutzern die Gebühren in Rechnung gestellt werden. Sie können beispielsweise einen Messwert namens library.appspot.com/books/borrowed definieren, um die Anzahl der von einem Kunden ausgeliehenen Bücher zu messen sowie eine Artikelnummer und einen Preis dafür zu definieren.

Die Service Control API nimmt Messwerte an, die dann gebündelt, aggregiert und an Cloud Billing weitergeleitet werden. Cloud Billing nimmt diese Messwerte auf und generiert Abrechnungen auf Basis des vordefinierten Preismodells. Wenn kein vordefiniertes Preismodell vorhanden ist, ignoriert Cloud Billing die Abrechnungsmesswerte einfach. Wenden Sie sich an den Account Manager Ihres Google Cloud-Partners, um das Preismodell zu definieren.

Abrechnung konfigurieren

Bevor Sie Abrechnungsdaten an die Service Control API senden, müssen Sie die folgenden Informationen in Ihrer Dienstkonfiguration angeben:

  • Überwachte Ressourcen: Sie können für jede Ressource Abrechnungsnutzungsdaten erfassen. Die überwachten Ressourcen benötigen mindestens einen cloud.googleapis.com/location-Labelschlüssel, um den Standort der Abrechnungsnutzung anzugeben.

  • Messwerte: Sie können einen oder mehrere Messwerte melden. Jeder Messwert misst die Nutzung einer bestimmten Art von Ressource. Nur DELTA-Messwerte mit INT64-Werten werden für die Abrechnung unterstützt.

  • Abrechnungskonfiguration: Geben Sie hier die Messwerte an, die an Cloud Billing gesendet werden sollen.

In der folgenden Beispieldienstkonfiguration wird ein Messwert definiert, der die Anzahl der Bücher erfasst, die ein Kunde ausgeliehen hat. Ein Client kann die Methode services.report aufrufen, um Daten für den Messwert zu melden. Einzelheiten zur Abrechnungskonfiguration finden Sie unter billing.proto.

# library
monitored_resources:
 - type: library.appspot.com/branch
   labels:
   - key: cloud.googleapis.com/location
     description: The cloud location.
   - key: library.appspot.com/city
     description: The city where the library branch is located in.

# The metrics to be used.
metrics:
- name: library.appspot.com/books/borrowed
  metric_kind: DELTA
  value_type: INT64
  unit: '1'

# The billing configuration.
billing:
  consumer_destinations:
  - monitored_resource: library.appspot.com/branch
    metrics:
    - library.appspot.com/books/borrowed

Abrechnungsmesswerte melden

Nachdem Sie das Monitoring in der Dienstkonfiguration festgelegt und die Dienstkonfiguration über die Service Management API per Push-Befehl übertragen haben, können Sie die Service Control API aufrufen, um Messwerte zu melden. Im folgenden Beispiel wird der Aufruf anhand des Befehls gcurl demonstriert. Weitere Informationen zum weiter oben, siehe Erste Schritte mit der Service Control API

$ gcurl -d "{
  'operations': [ {
    'operationId': '8356d3c5-f9b5-4274-b4f9-079a3731e6e5',
    'consumerId': 'project:library-consumer',
    'startTime': '`date +%FT%T%:z`',
    'endTime': '`date +%FT%T%:z`',
    'labels': {
      'cloud.googleapis.com/location': 'us-west1',
      'library.appspot.com/city': 'Kirkland',
    },
    'metricValueSets': [ {
      'metricName': 'library.appspot.com/books/borrowed',
      'metricValues': [ { 'int64Value': '10' } ]
    } ]
  } ]
}" https://servicecontrol.googleapis.com/v1/services/library.appspot.com:report