Redis slowlog

Redis slowlog
En tant qu'administrateurs de base de données, il est crucial de connaître les meilleurs outils pour vous aider à effectuer la tâche. Dans Redis, le journal lent est un de ces services. C'est un mécanisme d'exploitation de journalisation mais dans un sens non traditionnel.

Ce guide discutera de la configuration et de l'utilisation des commandes de journal lent redis.

Qu'est-ce que Redis Slow Log?

Le journal lent redis ou RSL est une fonctionnalité qui permet au serveur redis de suivre et de enregistrer toutes les requêtes qui dépassent le temps d'exécution alloué.

Si vous rencontrez une exécution lente de la requête ou une utilisation élevée du processeur dans votre serveur Redis, c'est l'outil que vous souhaitez utiliser.

Remarque: le temps d'exécution alloué n'inclut pas les opérations d'entrée / sortie. Il se réfère à l'heure réelle après que le serveur a reçu la commande et il est temps de terminer l'exécution.

À quel point le journal fonctionne lent?

La fonction de journal lent est très simple. Cela fonctionne en deux étapes simples.

  1. Une fois une requête émise, le serveur garde une trace du temps écoulé lors de l'exécution de la commande.
  2. Si la commande dépasse le temps alloué, il est enregistré en utilisant le système de journal lent.

Remarque: Le temps d'exécution d'une requête est spécifié dans la directive Slowlog-Log-Slower-Than dans le fichier de configuration Redis.

Vous pouvez également spécifier le nombre d'entrées dans le fichier journal lent à l'aide de la directive Slowlog-Max-Len.

Configuration des paramètres de journal

Deux entrées vous permettent de configurer les paramètres de journal lents.

  1. Slowlog-log-slower-than
  2. Slowlog-max-Len

Modifiez le fichier de configuration avec votre éditeur de texte pour modifier ou définir ces valeurs. Par défaut, ces valeurs sont définies sur:

slowlog-log-slower-than 10000
Slowlog-Max-Len 128

Par conséquent, le serveur enregistrera 128 entrées des requêtes qui dépassent 10000 microsecondes.

Si l'entrée du journal contient plus que les entrées spécifiées, elle supprime la plus ancienne pour faire de la place pour une nouvelle entrée.

À l'aide de la commande config set, vous pouvez également configurer les paramètres slowlog lors de l'exécution. Un exemple est comme indiqué:

127.0.0.1: 6379> Config set slowlog-log-slower-than 10000
127.0.0.1: 6379> Config set slowlog-max-Len 128

Redis Log lent

Avant de lire les entrées dans le slowlog, changeons la valeur du slowlog en une très petite valeur.

Un exemple de commande est comme indiqué ci-dessous:

127.0.0.1: 6379> config définir slowlog-log-slower-than 1
D'ACCORD

Toutes les requêtes qui dépassent 1 microseconde seront connectées aux entrées.

Perdons-nous des échantillons de requêtes comme indiqué:

127.0.0.1: 6379> hset user_info nom d'utilisateur "user1" e-mail "bonjour @ mail.pour"
(entier) 2
127.0.0.1: 6379> HGGETALL USER_INFO

Dans l'exemple ci-dessus, nous exécutons deux requêtes qui ne dépassent pas 1 micro seconde.

Recherche des entrées de journal lent

Pour récupérer toutes les entrées dans le journal lent redis, exécutez la commande slowlog get:

127.0.0.1: 6379> Slowlog Get

La commande ci-dessus doit récupérer toutes les entrées comme indiqué dans la sortie ci-dessous:

Composants d'une entrée de journal lente

Chaque entrée de journal lente est composée de 6 pièces principales.

  1. Le premier est un identifiant unique pour l'entrée du journal.
  2. Vient ensuite un horodat Unix indiquant l'heure à laquelle l'entrée a été ajoutée.
  3. La troisième partie indique le temps que la requête a pris en microsecondes.
  4. Quatrième est un tableau contenant les arguments de la commande spécifiée.
  5. Le dernier mais non le moindre est l'adresse du client et le port qui a émis la commande.
  6. Enfin, le nom du client spécifié par la commande client setName.

Redis réinitialiser les entrées de journal lent

Si vous souhaitez nettoyer les entrées de journal lent, utilisez la commande Slowlog Reset comme indiqué:

127.0.0.1: 6379> réinitialisation lente
D'ACCORD

La commande doit supprimer toutes les entrées existantes. Cependant, si la commande de réinitialisation dépasse le temps spécifié, il sera ajouté aux journaux.

Conclusion

Cet article couvrait l'un des meilleurs outils pour administrer et dépanner Redis; Redis Log lent.

Rendez-vous dans le prochain!