Ce document explique comment activer la journalisation dans Rust. La journalisation des requêtes et des réponses dans la console peut faciliter le dépannage des applications.
Prérequis
Ce guide utilise l'API Secret Manager, qui doit être activée avant de commencer. Pour savoir comment activer des services, suivez le guide de démarrage rapide des services.
Pour obtenir des instructions de configuration complètes pour les bibliothèques Rust, consultez Premiers pas avec Rust.
Dépendances
Vous devez déclarer les dépendances dans votre fichier Cargo.toml :
cargo add google-cloud-secretmanager-v1 google-cloud-gax
Activer la journalisation
Les bibliothèques clientes Rust utilisent le crate de traçage de Tokio pour collecter des diagnostics délimités,
structurés et compatibles avec les opérations asynchrones. Le crate de traçage sépare les sources de diagnostics (telles que les bibliothèques clientes Rust) des composants qui collectent ces diagnostics à l'aide du trait Subscriber. De nombreuses implémentations sont disponibles pour Subscriber. Dans cet exemple, nous allons utiliser l'abonné fmt
inclus dans le tracing-subscriber crate.
Ajoutez une dépendance au crate
tracing-subscriber:cargo add tracing tracing-subscriberÉcrivez une fonction qui reçoit l'ID du projet en tant que paramètre de fonction :
Ajoutez quelques déclarations d'utilisation pour rendre l'exemple plus lisible :
Initialisez l'abonné de traçage par défaut :
Initialisez un client avec le traçage activé. Notez l'appel à
.with_tracing():Utilisez ensuite le client pour envoyer une requête :
Résultat attendu
Le résultat (légèrement modifié pour plus de lisibilité) inclut une ligne semblable à celle-ci :
2025-11-03T14:17:31.759452Z INFO list_secrets{self=SecretManagerService ...
Cette ligne inclut la requête :
req=ListSecretsRequest { parent: "projects/... }
La réponse :
return=Ok(Response { parts: ..., body: ListSecretsResponse { ...
En savoir plus
L'abonné par défaut créé à l'aide de tracing_subscriber::fmt::init() peut être configuré de manière dynamique à l'aide de la variable d'environnement RUST_LOG. Pour en savoir plus, consultez
sa documentation.