Afficher les journaux d'instances

Cette page explique comment trouver et utiliser Cloud Logging pour afficher et interroger les journaux de votre instance Cloud SQL.

Cloud SQL utilise Cloud Logging. Consultez la documentation de Cloud Logging pour obtenir des informations complètes et accéder à des exemples de requêtes Cloud SQL.

Voir les journaux

Pour afficher les journaux correspondant aux entrées de journal de votre instance Cloud SQL, procédez comme suit :

Console

  1. Dans Google Cloud Console, accédez à la page Cloud Logging.

    Accéder à Cloud Logging

  2. Sélectionnez un projet Cloud SQL existant en haut de la page.
  3. Dans le générateur de requêtes, ajoutez les éléments suivants :
    • Ressource : sélectionnez Base de données Cloud SQL. Dans la boîte de dialogue, sélectionnez une instance Cloud SQL.
    • Noms des journaux : faites défiler la page jusqu'à la section Cloud SQL et sélectionnez les fichiers journaux correspondant à votre instance. Par exemple :
      • cloudsql.googleapis.com/postgres.log
    • Gravité : sélectionnez un niveau de journalisation.
    • Période : sélectionnez une valeur prédéfinie ou créez une période personnalisée.

gcloud

Exécutez la commande gcloud logging pour afficher les entrées de journal. Dans l'exemple ci-dessous, remplacez PROJECT_ID. L'option limit est un paramètre facultatif qui indique le nombre maximal d'entrées à renvoyer.

gcloud logging read "resource.type=cloudsql_database" \
--project=PROJECT-ID \
--limit=10 \
--format=json

Afficher le journal des opérations de l'instance

Vous pouvez afficher les journaux d'une instance à partir du volet Opérations. Les informations suivantes sont consignées dans le volet Opérations pour chaque opération effectuée sur l'instance :

  • Heure à laquelle l'opération est terminée, indiquée dans votre fuseau horaire local
  • Type d'opération
  • État de l'opération
  • Message décrivant le résultat de l'opération

Si une opération échoue, vous pouvez vous baser sur le message de description du résultat pour identifier et résoudre le problème.

Pour afficher un journal d'opérations d'instance :

  1. Dans Google Cloud Console, accédez à la page Instances Cloud SQL.

    Accéder à la page Instances Cloud SQL

  2. Pour ouvrir la page Présentation d'une instance, cliquez sur son nom.
  3. Cliquez sur Opérations pour accéder au volet affichant le journal des opérations.
Remarque : Le journal des opérations n'inclut pas les opérations effectuées à l'aide d'outils de gestion externes, tels que le client psql. Seules les opérations de gestion des utilisateurs et de modification du mot de passe effectuées à l'aide de Google Cloud Console, de l'outil de ligne de commande gcloud ou de l'API Cloud SQL Admin apparaissent dans le journal des opérations.

Afficher les journaux d'application

Les applications qui se connectent à Cloud SQL stockent leurs journaux dans différents emplacements.

App Engine (environnement flexible)

Sous Compute > App Engine > Services :

  • Dans la liste des services, recherchez votre service.
  • Cliquez sur le menu déroulant Outils.
  • Sélectionnez journaux.

Dans la section Opérations > Journalisation > Explorateur de journaux de Google Cloud Console, utilisez la requête suivante :

resource.type="gae_app"
resource.labels.module_id="default"

Cloud Run

Affichez les journaux dans la section Explorateur de journaux de Cloud Run dans Google Cloud Console. Notez que Cloud Run ne signale que les messages d'erreur du proxy d'authentification Cloud SQL. Utilisez une requête qui ressemble à ce qui suit :

resource.type="cloud_run_revision"
resource.labels.service_name="$SERVICE_NAME"
resource.labels.revision_name="$REVISION_NAME"

Proxy d'authentification Cloud SQL

Sous Opérations > Journalisation > Explorateur de journaux, utilisez la requête suivante :

log_id("appengine.googleapis.com/cloud-sql-proxy")

Résoudre les problèmes

Problème Dépannage
La journalisation consomme une grande quantité de processeurs et de mémoire sur votre instance Cloud SQL. Vous devez régler la journalisation.

Vous pouvez définir l'option log_statement sur "aucun" et désactiver l'option logging_collector. Si la journalisation continue, d'autres options liées aux journaux peuvent être réglées. Vous pouvez modifier l'instance afin de changer ces options.

Les journaux d'audit sont introuvables. Les journaux d'accès aux données ne sont écrits que si l'opération est un appel d'API authentifié qui crée, modifie ou lit des données créées par l'utilisateur, ou si l'opération accède à des fichiers de configuration ou à des métadonnées de ressources.
Les informations sur les opérations sont introuvables dans les journaux. Vous souhaitez obtenir davantage d'informations sur une opération.

Par exemple, un utilisateur a été supprimé, mais vous ne pouvez pas savoir qui est à l'origine de cette opération. Les journaux indiquent que l'opération a commencé, mais ne fournissent pas plus d'informations. Pour obtenir des informations détaillées et des informations personnelles telles que celles-ci, vous devez activer la journalisation d'audit.

Les fichiers journaux sont difficiles à lire. Vous préférez afficher les journaux au format JSON ou texte. Pour télécharger les journaux, vous pouvez utiliser la commande gcloud logging read avec les commandes Linux de post-traitement.

Pour télécharger les journaux au format JSON, procédez comme suit :


gcloud logging read \
"resource.type=cloudsql_database \
AND logName=projects/PROJECT_ID \
/logs/cloudsql.googleapis.com%2FLOG_NAME" \
--format json \
--project=PROJECT_ID \
--freshness="1d" \
> downloaded-log.json
    

Pour télécharger les journaux au format TEXT, procédez comme suit :


gcloud logging read \
"resource.type=cloudsql_database \
AND logName=projects/PROJECT_ID \
/logs/cloudsql.googleapis.com%2FLOG_NAME" \
--format json \
--project=PROJECT_ID \
--freshness="1d"| jq -rnc --stream 'fromstream(1|truncate_stream(inputs)) \
| .textPayload' \
--order=asc
> downloaded-log.txt
   
Les journaux de requêtes sont introuvables dans les journaux PostgreSQL. Vous devez activer les options pgaudit.
  1. Depuis un terminal, connectez-vous à la base de données :
    
    gcloud sql connect INSTANCE_NAME
          
  2. Exécutez la commande suivante pour créer l'extension :
    
    CREATE EXTENSION pgaudit;
          
  3. Quittez la base de données et exécutez la commande suivante à partir d'un terminal :
    
    gcloud sql instances patch INSTANCE_NAME \
    --database-flags=cloudsql.enable_pgaudit=on,pgaudit.log=all