Utiliser un journal de requêtes lent

  • Rversion finale: Washingtondc
  • Mis à jour 1 févr. 2024
  • 2 minutes de lecture
  • Les administrateurs peuvent utiliser les journaux de requêtes lents pour mieux comprendre l’impact des requêtes sur les performances de la plateforme. Le journal des requêtes lentes regroupe les données pour des requêtes similaires. Utilisez les données de requêtes lentes pour évaluer le besoin de nouveaux index, de changements apportés aux index existants ou de changements apportés aux requêtes fréquentes.

    Avant de commencer

    Rôle requis : admin

    Pourquoi et quand exécuter cette tâche

    Les requêtes sont similaires lorsqu’elles sont sélectionnées dans la même table et interrogent le même champ dans la clause where, mais recherchent des valeurs différentes dans le champ. Par exemple, ces requêtes sont agrégées en tant que requêtes similaires.

    SELECT * FROM sys_user WHERE name="ITIL User"
    SELECT * FROM sys_user WHERE name="System Administrator"

    L’agrégation de données de requêtes similaires permet aux administrateurs de surveiller l’impact sur les performances des requêtes lentes et des requêtes qui se produisent fréquemment. Le journal signale des données pour des requêtes similaires dont le temps d’exécution total dépasse 5 secondes.

    Procédure

    1. Accédez à la Tous > Diagnostics du système > Statistiques > Requêtes lentes
    2. Ouvrez un enregistrement de requête pour plus de détails.
      Tableau 1. Champs d’enregistrement de requête
      Champ Description
      Exemple

      Instruction SQL pour une requête individuelle, avant d’être canonisée pour l’agréger avec des requêtes similaires.

      Hachage La valeur de hachage pour cet enregistrement.
      Exemple de trace de la pile

      Une trace de pile pour une requête individuelle. Les lignes faisant référence au code de script (y compris le code personnalisé et le code du système de base) s’affichent au format suivant :

      table name.sys_id :Numéro de ligne

      Par exemple, cette trace de pile indique un appel de fonction à partir de la ligne 119 d’un script include.

      sys_script_include.105f70abc0a8010300d4d79ed1b93eb0 :119

      Pour plus d’informations, reportez-vous à la section Traces de pile.

      Exemple d'URL

      URL d’une requête individuelle, en fonction de la façon dont la requête a été appelée.

      • Transactions utilisateur : répertorie les paramètres de transaction. Par exemple, si un utilisateur accède à la liste des incidents, l’URL est /incident_list.do sysparm_query=active=true
      • Tâches planifiées : répertorie le nom de la tâche planifiée.
      • Toute autre méthode : répertorie un champ vide.
      Première observation

      Première occurrence d’une requête similaire.

      Dernière observation Dernière occurrence d’une requête similaire.
      Temps d'exécution total Temps d’exécution total.
      Compte d'exécutions

      Nombre d’occurrences de requêtes similaires regroupées.

      Temps d'exécution moyen (ms)

      Durée moyenne d’exécution d’une de ces requêtes similaires.

    3. Pour voir ce que la base de données fait pour récupérer les données, cliquez sur Expliquer le plan.
      Le plan de requête est signalé dans la liste connexe MySQL Explain Plan . Utilisez le plan de requête pour évaluer le besoin de nouveaux index ou de modifications des index existants. Pour plus d’informations, consultez la documentation du plan d’explication MySQL.

      Cette fonctionnalité fonctionne sur d’autres bases de données prises en charge, notamment MongoDB et Oracle.

    4. Pour générer une suggestion d’index pour une requête lente, cliquez sur Suggestion d’index.