MongoDB enregistre toutes les requêtes

MongoDB enregistre toutes les requêtes
La journalisation est l'une des choses essentielles du développement et des applications modernes. Les journaux fournissent un enregistrement traçable de toutes les opérations dans une application donnée dans un format de flux.

Par conséquent, dans des environnements critiques tels que des bases de données, le maintien d'un enregistrement des commandes exécutées sur le serveur peut être bénéfique dans le traçage où une erreur s'est produite et comment la revenir.

Dans cet article, nous apprendrons comment permettre au serveur MongoDB de journaliser toutes les commandes exécutées sur le serveur.

MongoDB Répondez au niveau du journal actuel

Nous devons modifier le niveau de journalisation pour activer ou désactiver la journalisation des requêtes dans le serveur MongoDB. Le niveau de journal définit les informations et comment elles sont connectées au serveur.

Il est bon de connaître l'état actuel avant d'augmenter ou de diminuer le niveau de logarithme. Cela vous permettra de revenir à son niveau de journal par défaut.

Dans MongoDB, nous pouvons utiliser la DB.Commande getProfilingStatus () pour obtenir le niveau de journal actuel dans une base de données donnée.

Commencez par vous connecter à la coque MongoDB:

$ Mongosh

Une fois connecté, passez à la base de données dans laquelle vous souhaitez gérer le niveau de journal. Dans notre exemple, nous utiliserons la base de données «cinéma»:

> Utiliser le cinéma
db.getProfilingStatus ()
< was: 0, slowms: 100, sampleRate: 1, ok: 1

La commande doit renvoyer le niveau de journal actuel défini dans la clé était. Par exemple, dans la sortie ci-dessus, nous pouvons voir que le niveau de journal actuel de la base de données est défini sur 0.

MongoDB Journal toutes les requêtes

Nous devons augmenter le niveau de journal à 2 pour permettre à MongoDB de enregistrer toutes les requêtes dans une base de données donnée.

Nous pouvons y parvenir en utilisant la base de données.Commande setProfilingLevel (). La fonction accepte le niveau cible que nous souhaitons définir en tant que paramètre.

https: // www.mongodb.com / docs / manuel / référence / méthode / db.setProfilingLevel /

La définition du Log Level 2 collecte toutes les données des opérations exécutées dans la base de données et les enregistre.

Nous pouvons exécuter la commande comme:

> db.SetProfilingLevel (2)
< was: 0, slowms: 100, sampleRate: 1, ok: 1

La commande renverra les informations comme suit:

  • était - montre le niveau précédent
  • Slowms - représente la valeur lente précédente
  • samplérate - définit la valeur de l'échantillon antérieure

Enfin, nous pouvons confirmer le nouveau niveau de journal avec la commande getProfilingStatus () comme indiqué:

> db.getProfilingStatus ()
< was: 2, slowms: 100, sampleRate: 1, ok: 1

Ici, nous pouvons voir que le niveau de journal actuel est défini sur 2.

Une fois mis à jour, vous pouvez vérifier le fichier journal MongoDB pour les entrées créées. Vérifiez MongoDB.bûche ou mongod.enregistrer.

Conclusion

Dans cet article, vous avez appris à afficher le niveau de journal actuel d'une base de données MongoDB. Vous avez également appris à utiliser la commande setProfilingLevel pour modifier le niveau de journal actuel d'une base de données donnée. Par exemple, la définition du niveau de journal sur 2 permet à MongoDB de enregistrer toutes les opérations dans la base de données.