Logs schreiben und aufrufen

Auf dieser Seite werden die Logs beschrieben, die bei der Verwendung von Cloud Run for Anthos in Google Cloud verfügbar sind und wie Sie Logs aufrufen und schreiben können.

Cloud Run for Anthos in Google Cloud verfügt über zwei Arten von Logs, die automatisch an Cloud Logging gesendet werden:

  • Anfragelogs: Logs von Anfragen, die an Dienste vn Cloud Run for Anthos in Google Cloud gesendet werden. Diese Logs werden automatisch erstellt.
  • Containerlogs: Logs, die von den Containerinstanzen ausgegeben werden, üblicherweise aus Ihrem eigenen Code, und in unterstützte Speicherorte geschrieben werden, wie unter Containerlogs schreiben erläutert.

Logs aufrufen

Sie können Logs für Ihren Dienst auf verschiedene Weise aufrufen:

  • Verwenden Sie die Seite "Cloud Run for Anthos in Google Cloud" in der Cloud Console
  • Verwenden Sie die Loganzeige von Cloud Logging in der Cloud Console

Beide Anzeigemethoden untersuchen dieselben Logs, die in Cloud Logging gespeichert sind. Die Loganzeige von Cloud Logging bietet jedoch weitere Details und Filterfunktionen.

Logs in Cloud Run for Anthos in Google Cloud ansehen

So rufen Sie Logs auf der Seite "Cloud Run for Anthos in Google Cloud" auf:

  1. Wechseln Sie zur Seite "Cloud Run for Anthos in Google Cloud".

  2. Klicken Sie in der angezeigten Liste auf den gewünschten Dienst.

  3. Klicken Sie auf den Tab LOGS, um die Anfrage- und Containerlogs für alle Überarbeitungen des Dienstes abzurufen. Sie können nach Logschweregrad filtern.

Logs in Cloud Logging ansehen

So rufen Sie Ihre Logs von Cloud Run for Anthos in Google Cloud in der Loganzeige von Cloud Logging auf:

  1. Rufen Sie in der Cloud Console die Seite „Loganzeige“ auf:

    Loganzeige aufrufen

  2. Wählen Sie oben auf der Seite ein vorhandenes Google Cloud-Projekt aus oder erstellen Sie ein neues Projekt.

  3. Wählen Sie in den Drop-down-Menüs die Ressource Kubernetes-Container aus.

Weitere Informationen finden Sie in Cloud Logging, der Operations-Suite von Google Cloud, unter Logs ansehen.

Logs in Cloud Code ansehen

Informationen zum Aufrufen Ihrer Logs in Cloud Code finden Sie in den Leitfäden zu IntelliJ und Visual Studio Code.

Logs programmatisch lesen

Wenn Sie die Logs programmatisch lesen möchten, können Sie eine der folgenden Methoden verwenden:

Containerlogs schreiben

Wenn Sie Logs von Ihrem Dienst aus schreiben, werden sie von Cloud Logging automatisch erfasst, sofern die Logs an einen der folgenden Speicherorte geschrieben werden:

Die meisten Entwickler schreiben Logs über Standardausgabe und Standardfehler.

Die Containerlogs, die in diese unterstützten Speicherorte geschrieben werden, werden automatisch dem Dienst, der Überarbeitung und dem Speicherort von Cloud Run for Anthos in Google Cloud zugeordnet.

Containerlogs mit einem Anfragelog korrelieren

In der Loganzeige werden Logs, die mit demselben trace verknüpft sind, im hierarchischen Format angezeigt. Wenn Sie auf das Dreiecksymbol links neben dem Anfragelogeintrag klicken, werden die mit dieser Anfrage verbundenen Containerlogs unter dem Anfragelog verschachtelt angezeigt.

Containerlogs werden nicht automatisch mit Anfragelogs korreliert, es sei denn, Sie verwenden eine Cloud Logging-Clientbibliothek. Um Containerlogs mit Anforderungslogs zu korrelieren, ohne eine Clientbibliothek zu verwenden, können Sie eine strukturierte JSON-Logzeile verwenden, die ein logging.googleapis.com/trace-Feld mit der aus dem X-Cloud-Trace-Context-Header extrahierten Trace-ID enthält, wie im obigen Beispiel für strukturiertes Logging gezeigt.

Nutzung der Anfragelogressource steuern

Anfragelogs werden automatisch erstellt. Auch wenn Sie die Menge der Anfragelogs nicht direkt über Cloud Run for Anthos in Google Cloud steuern können, können Sie das Feature Logausschlüsse von Cloud Logging verwenden.

Ein Hinweis zu Logging-Agents

Wenn Sie Cloud Logging mit bestimmten Google Cloud-Produkten wie Compute Engine verwendet haben, haben Sie möglicherweise Logging-Agents von Cloud Logging verwendet. Cloud Run for Anthos in Google Cloud verwendet keine Logging-Agents, da es integrierte Unterstützung für die Logerfassung bietet.

Logging-Ressource

Wenn Sie in der Loganzeige auf einen Logeintrag klicken, wird ein Logeintrag im JSON-Format geöffnet, in dem Sie die gewünschten Details anzeigen können.

Alle Felder in einem Logeintrag, wie Zeitstempel, Schweregrad und httpRequest, sind Standardfelder und werden in der Dokumentation für einen Logeintrag beschrieben.

Es gibt jedoch einige spezifische Labels oder Ressourcenlabels für Cloud Run for Anthos in Google Cloud. Diese sind hier mit Beispielinhalten aufgeführt:

{
 httpRequest: {…}
 insertId:  "5c82b3d1000ece0000000000"
 labels: {
  instanceId:  "00bf4bf00000fb59c906a00000c9e29c2c4e06dce91500000000056008d2b6460f163c0057b97b2345f2725fb2423ee5f0bafd36df887fdb1122371563cf1ff453717282afe000001"
 }
 logName:  "projects/my-project/logs/kuberun/.googleapis.com%2Frequests"
 receiveTimestamp:  "2019-03-08T18:26:25.981686167Z"
 resource: {
  labels: {
   configuration_name:  "myservice"
   location:  "us-central1"
   project_id:  "my-project"
   revision_name:  "myservice-00002"
   service_name:  "myservice"
  }
  type:  "k8s_container"
 }
 severity:  "INFO"
 timestamp:  "2019-03-08T18:26:25.970397Z"
}
Feld Werte und Hinweise
instanceId Die Containerinstanz, die die Anfrage verarbeitet hat.
logName Gibt das Log an, z. B. Anfragelog, Standardfehler, Standardausgabe usw.
configuration_name Die Konfigurationsressource, die die Überarbeitung erstellt hat, mit der die Anfrage bereitgestellt wurde.
location Der GCP-Speicherort des Dienstes.
project_id Das Projekt, in dem der Dienst bereitgestellt wird.
revision_name Die Überarbeitung, die die Anfrage bereitgestellt hat.
service_name Der Dienst, der die Anfrage bereitgestellt hat.
type k8s_container. Der Ressourcentyp von Cloud Run for Anthos in Google Cloud.