Vous pouvez écrire des journaux dans Cloud Logging à partir d'applications Ruby à l'aide de la bibliothèque Cloud Logging pour Ruby ou directement à l'aide de la bibliothèque cliente cloud Cloud Logging pour Ruby.
Il n'est pas nécessaire d'installer l'agent Cloud Logging pour utiliser la bibliothèque Cloud Logging pour Ruby sur une instance de VM Compute Engine.
Avant de commencer
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Logging API.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
-
Make sure that billing is enabled for your Google Cloud project.
-
Enable the Cloud Logging API.
- Installez Ruby 2.2+ ou version ultérieure.
Installer la bibliothèque
Nous fournissons une bibliothèque Cloud Logging pour Ruby implémentant un enregistreur facile à utiliser pour les frameworks Web Ruby basés sur Rack :
Ajoutez le gem Google Cloud Observability à votre fichier Gemfile:
Utilisez Bundler pour installer le gem :
bundle install
Activer la bibliothèque
Si vous utilisez Ruby on Rails, Bundler charge automatiquement la bibliothèque dans votre application au démarrage, ce qui définit l'enregistreur par défaut Rails.logger
sur une instance de l'enregistreur Cloud Logging.
D'autres applications basées sur Rack peuvent utiliser le middleware Rack pour remplacer l'enregistreur Rack par l'enregistreur Cloud Logging, si votre framework Web est compatible avec l'enregistreur Rack :
Configurer la bibliothèque
Vous pouvez personnaliser le comportement de la bibliothèque Cloud Logging pour Ruby. Consultez la configuration de la bibliothèque. pour consulter la liste des options de configuration possibles.
Utiliser l'enregistreur Cloud Logging
Une fois que la bibliothèque Cloud Logging pour Ruby est activée, vous pouvez utiliser l'enregistreur dans votre application :
logger.info "Hello World!"
logger.error "Oh No!"
Pour plus d'informations sur l'installation, consultez la documentation de la bibliothèque Cloud Logging pour Ruby. Vous pouvez également signaler d'éventuels problèmes à l'aide de l'outil de suivi des problèmes.
Écrire des journaux avec la bibliothèque cliente Cloud Logging
Pour savoir comment utiliser directement la bibliothèque cliente Cloud Logging pour Ruby, consultez la page Bibliothèques clientes Cloud Logging.
Exécuter sur Google Cloud
Pour qu'une application écrive des journaux à l'aide de la bibliothèque Cloud Logging pour Ruby,
le compte de service de la ressource sous-jacente doit disposer
Rôle IAM Rédacteur de journaux (roles/logging.logWriter
).
La plupart des environnements Google Cloud configurent automatiquement
compte de service doit disposer de ce rôle.
App Engine
Cloud Logging est automatiquement activé pour App Engine et le compte de service par défaut de votre application dispose des autorisations IAM par défaut permettant d'écrire des entrées de journal.
Pour en savoir plus, consultez la section Écrire et afficher des journaux.
Google Kubernetes Engine (GKE)
GKE accorde automatiquement le compte de service par défaut
le rôle IAM Rédacteur de journaux (roles/logging.logWriter
).
Si vous utilisez
Fédération d'identité de charge de travail pour GKE
avec ce compte de service par défaut pour permettre aux charges de travail d'accéder
API Google Cloud, aucune configuration supplémentaire n'est requise.
Toutefois, si vous utilisez la fédération d'identité de charge de travail pour GKE avec un
compte de service IAM personnalisé, puis assurez-vous que le compte de service
dispose du rôle Rédacteur de journaux (roles/logging.logWriter
).
Si nécessaire, vous pouvez également utiliser la commande suivante pour ajouter le niveau d'accès logging.write
lors de la création du cluster :
gcloud container clusters create example-cluster-name \
--scopes https://www.googleapis.com/auth/logging.write
Compute Engine
Lorsque vous utilisez des instances de VM Compute Engine, ajoutez le niveau d'accès cloud-platform
à chaque instance. Lorsque vous créez une instance via
dans la console Google Cloud, vous pouvez le faire dans la section Identité et accès à l'API.
du panneau Créer une instance. Utilisez le compte de service par défaut de Compute Engine ou un autre compte de service de votre choix, puis sélectionnez Autoriser l'accès complet à l'ensemble des API Cloud dans la section Identité et accès à l'API. Quel que soit le service
de votre choix, assurez-vous qu'il dispose du rôle
le rôle Rédacteur de journaux dans le rôle IAM et "Admin" de
console Google Cloud.
Exécuter en local et depuis un autre emplacement
Pour utiliser la bibliothèque Cloud Logging pour Ruby en dehors de Google Cloud, y compris en exécutant la bibliothèque sur votre propre poste de travail, sur le système sur des ordinateurs ou sur les instances de VM d'un autre fournisseur cloud, indiquez l'ID de votre projet Google Cloud et les ressources compte de service les identifiants directement à la bibliothèque Cloud Logging pour Ruby.
Pour les comptes de service existants, procédez comme suit :
Accordez au compte de service le rôle IAM Rôle IAM Rédacteur de journaux (
roles/logging.logWriter
). Pour en savoir plus sur IAM consultez la page Contrôle des accès.
Si vous n'avez pas de compte de service, créez-en un. Pour en savoir plus sur ce processus, consultez la section Créer des comptes de service.
Pour obtenir des informations générales sur les méthodes que vous pouvez utiliser pour vous authentifier, consultez Terminologie: comptes de service.
Utiliser l'interface de configuration de Ruby on RailsSi vous utilisez le framework Ruby on Rails, fournissez les paramètres via l'interface de configuration de Ruby on Rails :
Vous pouvez également définir une configuration partagée pour l'ensemble des gems Google Cloud Observability comme suit :
Logging est activé par défaut lorsque Rails est exécuté en mode de production. Pour activer Logging en mode de développement, intégrez les ajouts suivants :
Utiliser l'interface de configuration d'instrumentation :
Lorsque vous utilisez d'autres applications basées sur Rack, fournissez les paramètres via l'interface de configuration :
Vous pouvez également définir une configuration partagée pour tous les gems Google Cloud Observability à l'aide de la commande suivante:
Afficher les journaux
Dans la console Google Cloud, accédez à la page Explorateur de journaux.
Accéder à l'explorateur de journaux
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.
Dans l'explorateur de journaux, vous devez spécifier une ou plusieurs ressources, mais leur sélection peut ne pas être évidente. Voici quelques conseils pour vous aider à faire vos premiers pas :
Si vous déployez votre application sur App Engine ou utilisez les bibliothèques propres à App Engine, définissez votre ressource sur Application GAE.
Si vous déployez votre application sur Compute Engine, définissez la ressource sur Instance de VM GCE.
Si vous déployez votre application sur Google Kubernetes Engine, la configuration de la journalisation de votre cluster détermine le type de ressource des entrées de journal. Pour obtenir sur les anciens modèles d'observabilité et d'observabilité Google Cloud les solutions Kubernetes Monitoring et leur impact sur type de ressource, consultez Migrer vers Google Cloud Observability Kubernetes Monitoring.
Si votre application utilise directement l'API Cloud Logging, la ressource dépend de l'API et de votre configuration. Par exemple, dans votre application, vous pouvez spécifier une ressource ou utiliser une ressource par défaut.
Si aucun journal ne s'affiche dans l'explorateur de journaux, passez en mode de requête avancée et utilisez une requête vide pour voir toutes les entrées de journal.
- Pour passer en mode de requête avancée, cliquez sur le menu (▾) en haut de l'explorateur de journaux, puis sélectionnez Convertir en filtre avancé.
- Effacez le contenu qui apparaît dans le champ de filtre.
- Cliquez sur Envoyer le filtre.
Vous pouvez examiner les entrées individuelles pour identifier vos ressources.
Pour en savoir plus, consultez la page Utiliser l'explorateur de journaux.