Nutzungsberichte ansehen

Mit Google Compute Engine können Sie detaillierte Berichte über die Nutzung Ihrer Compute Engine in einen Google Cloud Storage-Bucket exportieren. Sie verwenden dabei die Export-Funktion. Die Nutzungsberichte geben Auskunft über die Lebensdauer Ihrer Ressourcen. Sie können zum Beispiel sehen, wie viele Ihrer Instanzen ein n1-Standard-1-Image ausführen und wie lange jede Instanz gelaufen ist. Die Nutzungsberichte liefern keine Informationen zur Abrechnung oder Aktivitäten, wie zum Beispiel API-Anfragen. Für Informationen zur Abrechnung, siehe Funktion zum Export der Abrechnung. Für Informationen zu Aktivitätsprotokollen, siehe Aktivitätsprotokolle.

Auf der Seite mit den Compute Engine-Einstellungen sind Nutzer-Logs als CSV-Dateien verfügbar. In den Logs wird die Nutzung auf Ressourcenebene beschrieben, z. B. die Ausführungszeit einer VM-Instanz, der Speicherplatz eines nichtflüchtigen Speichers und Informationen zu anderen Compute Engine-Funktionen.

Vorbereitung

Übersicht

Wenn Sie die Nutzungsberichte aktivieren, liefert die Compute Engine zwei Arten von Berichten an den von Ihnen angegebenen Google Cloud Storage-Bucket:

  1. Tägliche Nutzungsberichte

    Diese Berichte werden täglich geliefert und enthalten die Nutzungsdaten vom Vortag. Jeder Bericht ist eine separate Datei, die Daten aus dem letzten Zeitraum enthält. Die Daten in diesen Berichten sind unveränderlich, was bedeutet, dass Compute Engine die Protokolldatei weder aktualisieren noch neu schreiben wird, wenn es Ungenauigkeiten gibt. Stattdessen werden die Daten im nächsten neuen Bericht korrigiert, der an den Bucket geliefert wird.

    Die täglichen Nutzungsberichte tragen das folgende Namensformat:

    <bucket>/<report_prefix>_<numeric_project_id>_<YYYYMMDD>.csv
    
  2. Monatlicher Rollup-Bericht

    Ein einziger monatlicher Rollup-Bericht wird täglich geliefert, der die monatlichen Nutzungsdaten für dieses Projekt bis zu diesem Tag, aber nicht einschließlich der Daten dieses Tages enthält. Der monatliche Nutzungsbericht wird jeden Tag mit neuen Daten überschrieben, die die monatliche Nutzung von Ressourcen bis zu diesem Zeitpunkt widerspiegelt. Es wird nur eine monatliche Datei mit den Nutzungsdaten pro Projekt und pro Monat geben.

    Monatliche Rollup-Berichte haben das folgende Namensformat:

    <bucket>/<report_prefix>_<numeric_project_id>_<YYYYMM>.csv
    

    Die täglichen und monatlichen Berichtsdateien sehen sehr ähnlich aus, unterscheiden sich aber im Datumsformat. Die monatlichen Rollup-Berichte werden mit dem Jahr und dem Monat datiert (YYYYMM) und die täglichen Nutzungsberichte mit dem Jahr, Monat und Datum (YYYYMMDD).

Alle Nutzungsberichte werden im CSV-Format (kommagetrennte Werte) geliefert und den Dateien mit den Nutzungsberichten wird mit <report_prefix> ein Präfix vorangestellt. Das Präfix <report_prefix> ist ein anpassbarer Wert, der vom Nutzer ausgewählt wird. Wenn Sie kein Präfix für den Bericht angeben, wird standardmäßig das Präfix usage_gce verwendet. Alle Zeiten sind in Pacific Time (PST) angegeben.

Unterstützte Messwerte

Tägliche Nutzungsberichte liefern Informationen über die Nutzung der folgenden Ressourcen:

  • Virtuelle Maschinen
  • Persistente Festplatten
  • Images
  • Snapshots
  • Statische IP-Adressen
  • Lastenausgleichsmodule

Jede Ressource wird mit den folgenden Messwerten beschrieben:

Name des Messwerts Eigenschaften des Messwerts
Datum des Berichts:
  • Messwerttyp: String
  • Beschreibung: Das Datum der Nutzung.
  • Beispiel: 2013-08-15
MeasurementId
  • Messwerttyp: String
  • Beschreibung: Die ID des Ressourcentyps, der gemessen wird. Zum Beispiel steht VmimageN1Standard_1 für den Maschinentyp n1-standard-1.
  • Beispiel: com.google.cloud/services/compute‑engine/VmimageN1Standard_1
Menge
  • Messwerttyp: Integer
  • Beschreibung: Die Menge der Nutzung für das angegebene Datum.
  • Beispiel: 86400
Einheit
  • Messwerttyp: String
  • Beschreibung: Der Einheitentyp wie Anzahl, Sekunden, Stunden und so weiter.
  • Beispiel: Sekunden
Ressourcen-URI
  • Messwerttyp: String
  • Beschreibung: Der URI der angegebenen Ressource.
  • Beispiel: https://www.googleapis.com/compute/v1/projects/<project‑id>/zones/<zone>/instances/<instance>
ResourceId
  • Messwerttyp: Integer
  • Beschreibung: Eine numerische ID, die die bestimmte Ressource identifiziert.
  • Beispiel: 16557630484925648021
Standort
  • Messwerttyp: String
  • Beschreibung: Der Standort der Ressource. Entweder der Name einer Zone oder Region oder GLOBAL für globale Ressourcen.
  • Beispiel: us-central1-a

Das folgende Beispiel zeigt einen Eintrag im Bericht:

Datum des Berichts: MeasurementId Menge Einheit Ressourcen-URI Ressourcen-ID Standort
02/13/2014 com.google.cloud/services/compute-engine/VmimageN1Standard_1 86400 Sekunden https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-a/instances/my-instance 16557630484 us-central1-a

Zugriffskontrolle

Wenn Sie die Funktion zum Exportieren der Nutzung in einen Cloud Storage-Bucket aktivieren, fügt sich Compute Engine automatisch in den Bucket mit Schreibzugriff ein, um Nutzungsberichte liefern zu können. Solange Compute Engine Zugriff auf den Bucket hat und die Funktion zum Exportieren der Nutzung aktiviert ist, wird Compute Engine weiterhin Nutzungsberichte in den angegebenen Cloud Storage-Bucket exportieren.

Sie können erkennen, dass Compute Engine auf einen Bucket Zugriff hat, wenn die folgende ID der Zugriffskontrollliste dem Bucket hinzugefügt wurde:

cloud-cluster-analytics-export@google.com

Jeder Nutzer, der Inhaber des Projekts ist, hat vollen Zugriff auf den Google Cloud Storage-Bucket. Andere Nutzer, wie Schreiber und Leser, werden unterschiedliche Rechte für den Zugriff auf den Bucket haben. Weitere Informationen über die Zugriffssteuerungslisten (ACLs) für Buckets finden Sie in der Dokumentation Cloud Storage-Zugriffskontrolle.

Wenn Sie die Funktion zum Exportieren der Nutzung deaktivieren, wird Compute Engine automatisch den Schreibzugriff von Compute Engine auf den Bucket entfernen. Wenn Sie die Berechtigungen für das Konto cloud-cluster-analytics-export@google.com ändern und dann die Funktion zum Exportieren der Nutzung deaktivieren, wird Compute Engine die Funktion zum Exportieren der Nutzung zwar deaktivieren, aber das Konto nicht aus der Zugriffsliste des Projekts entfernen. Sie können das Konto manuell entfernen, falls gewünscht.

Voraussetzungen

Bevor Sie Compute Engine zum Exportieren der Nutzung verwenden können, müssen Sie sich bei Google Cloud Storage anmelden, falls Sie das nicht bereits getan haben.

Exportieren der Nutzung einrichten

Wenn Sie die Funktion zum Exportieren der Nutzung das erste Mal aktivieren, wird der erste Bericht am nächsten Tag mit den Einzelheiten zur Nutzung am Vortag verschickt. Danach erhalten Sie die Berichte alle 24 Stunden.

Um die Funktion zum Exportieren der Nutzung einzurichten, aktivieren Sie das gcloud compute-Tool. Wenn Sie die Funktion aktivieren, müssen Sie zwei Attribute definieren:

  1. Den Google Cloud Storage-Bucket, wo Ihre Berichte abgeliefert werden sollen.

    Sie können einen beliebigen Cloud Storage-Bucket auswählen, dessen Inhaber Sie sind, einschließlich Buckets von verschiedenen Projekten. Dieser Bucket muss bereits existieren, bevor Sie mit dem Exportieren von Berichten beginnen können. Außerdem müssen Sie als Inhaber ein Zugriffsrecht auf den Bucket haben. Google Cloud Storage berechnet Gebühren für die Nutzung. Deshalb sollten Sie die Informationen in der Preisliste für Cloud Storage durchlesen, um zu sehen, welche Kosten Ihnen für diesen Dienst entstehen könnten.

    Jeder Nutzer, der Lesezugriff auf den Cloud Storage-Bucket hat, wird sich die Nutzungsberichte im Bucket ansehen können. Jeder Nutzer, der Schreibzugriff auf den Bucket hat, wird die vorhandenen Dateien im Bucket erstellen, anzeigen und ändern können. Weitere Informationen finden Sie im Abschnitt Zugriffskontrolle.

  2. Den Berichtepräfix für Ihre Dateien.

    Sie können das für Ihre Nutzungsberichte zu verwendende Berichtepräfix festlegen. Ihre Nutzungsberichte werden Dateinamen haben, die dieses Präfix enthalten. Wenn Sie zum Beispiel "my-cool-project-report" als Ihren Berichtepräfix festlegen, erscheint der Dateiname in einem ähnlichen Format wie my-cool-project-report_1234567890_20131230.csv. Wenn Sie keinen Berichtepräfix festlegen, wird das Standardpräfix usage_gce verwendet.

Nachdem Sie sich für diese beiden Properties entschieden haben, können Sie die Funktion zum Exportieren der Nutzung auf folgende Weisen aktivieren:

Konsole


  1. Rufen Sie die Seite "Compute Engine-Einstellungen" auf.
  2. Klicken Sie auf Exportieren der Nutzung aktivieren.
  3. Tragen Sie in den erforderlichen Feldern den Namen des Buckets und das Berichtepräfix ein, falls gewünscht. Wenn Sie das Berichtepräfix leer lassen, wird das Standardpräfix usage_gce verwendet.
  4. Klicken Sie auf Speichern.

gcloud


Wählen Sie in gcloud compute diese Funktion mit dem Befehl gcloud compute project-info set-usage-bucket aus, um diese Funktion zu aktivieren:

 gcloud compute project-info set-usage-bucket --bucket URI [--prefix PREFIX]

Der URI des Buckets kann im Format gs://<bucket-name> oder https://storage.googleapis.com/<bucket-name> sein.

API

Clientbibliotheken

Mithilfe der Clientbibliotheken aktivieren Sie die setUsageExportBucket()-Methode in der Projects-Sammlung, um das Exportieren der Nutzung zu ermöglichen. Beispielsweise können Sie die Funktion in der Python-Clientbibliothek so aktivieren:

def setUsageExport(gce_service, auth_http):
  body = {
    "bucketName": "https://storage.googleapis.com/usage-export-sample",
    "reportNamePrefix": "exampleprefix"
  }

request = gce_service.projects().setUsageExportBucket(project=PROJECT_ID, body=body)
response = request.execute(http=auth_http)

print response

HTTP

Sie können auch direkt eine HTTP-Anfrage an die setUsageExportBucket-Methode stellen. Im folgenden Beispiel wird die httplib2-Bibliothek genutzt, um das Exportieren der Nutzung zu ermöglichen:

#!/usr/bin/python

import urllib
import argparse
import logging
import sys
import random
from json import load,dumps
...

PROJECT_ID = "myproject"
API_VERSION = "v1"
API_URL = "https://www.googleapis.com/compute/" + API_VERSION + "/projects/" + PROJECT_ID
OAUTH_FILE = "oauth-dev.dat"

def main(argv):
  logging.basicConfig(level=logging.INFO)

  parser = argparse.ArgumentParser(
    description=__doc__,
    formatter_class=argparse.RawDescriptionHelpFormatter,
    parents=[tools.argparser])

  # Parse the command-line flags.
  flags = parser.parse_args(argv[1:])

  http = httplib2.Http()

  # Add code to authenticate to the service
  ....

  url = API_URL + "/setUsageExportBucket"

  body = {
    "bucketName": "https://storage.googleapis.com/usage-export-sample",
    "reportNamePrefix": "exampleprefix"
  }

  formattedBody = dumps(body)
  resp,content = http.request(url,
                              "POST",
                              headers=listOfHeaders,
                              body=formattedBody)

  print str(content)

if __name__ == "__main__":
    main(sys.argv)

Weitere Informationen hierzu finden Sie in der API-Referenzdokumentation.

Die Aktivierung von Nutzungsberichten überprüfen

Sie können die Projekteinstellungen für das Exportieren der Nutzung überprüfen, indem Sie Informationen über das Projekt abrufen:

gcloud compute project-info describe

Suchen Sie nach dem usageExportLocation-Feld:

+-------------------------+----------------------------------------------------+
| name                    | myproject                                          |
| description             |                                                    |
| creation-time           | 2012-10-18T16:31:52.308-07:00                      |
| usage                   |                                                    |
|   snapshots             | 1.0/1000.0                                         |
|   networks              | 2.0/2.0                                            |
|   firewalls             | 3.0/10.0                                           |
|...                      |                                                    |
| usageExportLocation     |                                                    |
|   bucketName            | https://storage.googleapis.com/usage-export-sample |
|   reportNamePrefix      |                                                    |
+-------------------------+----------------------------------------------------+

Nutzungsberichte deaktivieren

Wenn Sie Nutzungsberichte deaktivieren, entfernt Compute Engine automatisch den Schreibzugriff für Ihre Compute Engine im Cloud Storage-Bucket und stellt das Senden von neuen Berichten ein.

Konsole


  1. Rufen Sie die Seite "Compute Engine-Einstellungen" auf.
  2. Klicken Sie auf Exportieren der Nutzung deaktivieren.

gcloud


Sie können in gcloud compute die Funktion zum Exportieren der Nutzung durch den Befehl gcloud compute project-info set-usage-bucket mit einem leeren --bucket-Flag deaktivieren:

gcloud compute project-info set-usage-bucket --bucket

API

Clientbibliotheken

Um die Clientbibliotheken nutzen zu können, stellen Sie eine Anfrage an die setUsageExportBucket()-Methode ohne einen Namen für den Bucket. Beispielsweise in der Python-Clientbibliothek können Sie die Funktion so deaktivieren:

def disableUsageExport(gce_service, auth_http):
  body = {
    "bucketName": "",
}

request = gce_service.projects().setUsageExportBucket(project=PROJECT_ID, body=body)
response = request.execute(http=auth_http)

print response

HTTP

Sie können auch direkt eine HTTP-Anfrage an die setUsageExportBucket-Methode stellen. Im folgenden Beispiel wird die httplib2-Bibliothek verwendet, um eine Anfrage zu stellen, mit der die Nutzung des Buckets zum Exportieren deaktiviert wird:

#!/usr/bin/python

import urllib
import argparse
import logging
import sys
import random
from json import load,dumps
...

PROJECT_ID = "myproject"
API_VERSION = "v1"
API_URL = "https://www.googleapis.com/compute/" + API_VERSION + "/projects/" + PROJECT_ID
OAUTH_FILE = "oauth-dev.dat"

def main(argv):
  logging.basicConfig(level=logging.INFO)

  parser = argparse.ArgumentParser(
    description=__doc__,
    formatter_class=argparse.RawDescriptionHelpFormatter,
    parents=[tools.argparser])

  # Parse the command-line flags.
  flags = parser.parse_args(argv[1:])

  http = httplib2.Http()

  # Add code to authenticate to the service
  ....

  url = API_URL + "/setUsageExportBucket"

  body = {
     "bucketName": ""
  }

  formattedBody = dumps(body)
  resp,content = http.request(url,
                              "POST",
                              headers=listOfHeaders,
                              body=formattedBody)

  print str(content)

if __name__ == "__main__":
    main(sys.argv)
Hat Ihnen diese Seite weitergeholfen? Teilen Sie uns Ihr Feedback mit:

Feedback geben zu...

Compute Engine-Dokumentation