Annexe D : Visualiseur de journaux
Picard tient un journal des événements qui peut s’avérer utile pour le dépannage et la compréhension du comportement de Picard. La visionneuse de journaux vous permet de consulter et de filtrer ces entrées, ainsi que d’exporter le journal vers un fichier afin de le partager avec d’autres ou de le joindre à des rapports de bogues. C’est également ici que vous définissez le niveau de journalisation et que vous sélectionnez les options de débogage à inclure dans le journal pendant la session en cours. Notez que Picard réinitialise automatiquement le niveau de journalisation à la valeur par défaut sélectionnée dans le fichier Options de démarrage à chaque démarrage de Picard, sauf si l’option de ligne de commande --debug est spécifiée ou si la variable d’environnement PICARD_DEBUG est définie.
On accède à la visionneuse de journaux via le menu . Elle affiche les entrées du journal sous forme de tableau comprenant des colonnes pour le niveau du journal, l’horodatage, le module et la méthode (avec le numéro de ligne) à l’origine de l’entrée, ainsi que le message. Le nombre de lignes du journal est indiqué dans le coin inférieur droit de la fenêtre.
Paramètres du journal
Il est possible de contrôler la quantité d’informations enregistrées en définissant le niveau de journalisation et en sélectionnant les options de débogage à inclure dans le journal. Ces paramètres peuvent être configurés directement dans la visionneuse de journaux à l’aide des commandes situées au bas de la fenêtre. Lorsqu’ils sont définis depuis la visionneuse de journaux, le niveau de journalisation et les options de débogage sélectionnés sont immédiatement appliqués.
Le niveau de journalisation peut être défini sur Débogage, et des options de débogage peuvent être configurées pour une session en lançant Picard à l’aide des options de ligne de commande --debug et --debug-opts.
Niveau de journalisation
Le niveau de journalisation activé pour la session en cours est sélectionné à l’aide d’un menu déroulant. Les options disponibles sont Erreur, Avertissement, Informations et Débogage. Les entrées seront enregistrées au niveau sélectionné ou à un niveau supérieur. Par exemple, si vous sélectionnez Avertissement, les entrées Avertissement et Erreur seront enregistrées, mais pas les entrées Débogage ou Informations. En général, il est recommandé de définir le niveau de journalisation sur Informations pour une utilisation normale afin d’éviter une journalisation excessive, et de n’utiliser Débogage que lors du dépannage de problèmes spécifiques pour s’assurer que toutes les entrées de journal sont capturées.
Notez que le niveau de journalisation sélectionné s’applique immédiatement ; ainsi, si vous passez au niveau Avertissement, seuls les événements de niveau Avertissement et Erreur seront consignés à partir de ce moment-là. Toutefois, les entrées de journal enregistrées à un niveau inférieur avant la modification du niveau de journalisation ne seront pas supprimées du journal et resteront visibles dans la visionneuse de journal jusqu’à ce que celui-ci soit effacé. Le niveau de journalisation sera automatiquement réinitialisé à la valeur par défaut sélectionnée dans le fichier Options de démarrage à chaque démarrage de Picard.
Le sélecteur de niveau de journalisation sert également à filtrer les entrées de journal affichées dans la visionneuse de journaux. Si vous réglez le niveau sur Avertissement, seules les entrées de niveau Avertissement et Erreur s’afficheront dans la visionneuse de journaux, même si des entrées plus détaillées sont enregistrées à un niveau inférieur.
Options de débogage
Les différentes options de débogage ont été spécialement conçues pour faciliter le dépannage en permettant la journalisation détaillée d’événements qui ne figureraient normalement pas dans le journal de débogage. Cela peut aider les développeurs à identifier les problèmes et à comprendre le comportement de leurs plugins ou des modifications apportées au code au sein de Picard. Les entrées du journal de débogage sont utiles lorsqu’un utilisateur cherche à déterminer quel plugin modifie les métadonnées, entre autres, mais une journalisation de débogage exhaustive, telle que celle requise pour dépanner un plugin ou une modification de code spécifique, peut s’avérer fastidieuse.
Lorsque Picard est lancé avec une ou plusieurs options de débogage activées à l’aide de l’option de ligne de commande --debug-opts, des informations supplémentaires spécifiques aux options sélectionnées peuvent être consignées dans le journal, en plus des entrées standard. Ces options ne doivent être activées qu’en cas de nécessité pour le dépannage, généralement à la demande d’un développeur enquêtant sur un problème signalé, car elles peuvent générer un volume extrêmement important de données de journalisation. Par défaut, aucune option de débogage n’est activée.
Le menu déroulant Options de débogage vous permet de sélectionner les catégories d’options de débogage à activer, comme si elles avaient été activées via la ligne de commande. Notez que les entrées supplémentaires du journal de débogage ne seront enregistrées que si le niveau de journalisation est défini sur Débogage. Notez également que les entrées détaillées supplémentaires rencontrées avant l’activation des options de débogage ne seront pas enregistrées.
Si vous effectuez un dépannage, il est recommandé de définir le niveau de journalisation sur Débogage et de n’activer que les options de débogage pertinentes demandées par un développeur chargé d’examiner un problème signalé, afin de garantir que toutes les entrées de journal pertinentes soient enregistrées sans générer de données de journalisation superflues.
Filtrage
Lors du dépannage d’un problème, il peut être utile de filtrer les entrées du journal afin de se concentrer sur les informations pertinentes. La visionneuse de journaux propose des commandes permettant de filtrer les entrées du journal en fonction du niveau de journalisation et d’une recherche textuelle.
Les filtres peuvent être combinés pour affiner davantage les entrées du journal. Par exemple, vous pouvez filtrer les résultats pour n’afficher que les entrées de niveau Avertissement et Erreur contenant le mot « plugin », afin de vous concentrer sur les problèmes potentiels liés aux plugins. Une fois le journal filtré, le nombre de lignes actuellement affichées et le nombre total de lignes du journal s’affichent tous deux dans le coin inférieur droit de la fenêtre.
Niveau de journalisation
Le menu déroulant « Niveau de journalisation » permet de sélectionner le niveau à utiliser pour filtrer les entrées du journal. La sélection d’un niveau de journalisation n’affichera que les entrées de ce niveau et des niveaux supérieurs. Par exemple, si vous sélectionnez Avertissement, seules les entrées de type Avertissement et Erreur s’afficheront, mais pas celles de type Débogage ou Informations.
Notez que la modification de ce paramètre modifie également le niveau de journalisation pour la session en cours ; ainsi, si vous réglez le niveau sur Avertissement, seuls les événements de niveau Avertissement et Erreur seront consignés à partir de ce moment-là.
Texte à filtrer
Pour limiter l’affichage des entrées de journal à celles qui contiennent un texte spécifique, vous pouvez saisir une chaîne de caractères dans la zone de texte du filtre située à côté du sélecteur « Options de débogage », puis cliquer sur le bouton Filtrer. Seules les entrées contenant le texte spécifié s’afficheront alors. Le filtre ne tient pas compte de la casse et recherche le texte dans n’importe quelle partie de l’entrée de journal, y compris le niveau de journalisation, l’horodatage, le module, la méthode et le message.
Si vous souhaitez utiliser une expression régulière pour filtrer les entrées du journal, vous devez activer l’option Filtre Regex dans le menu contextuel de la visionneuse de journaux. Pour accéder au menu contextuel, cliquez avec le bouton droit de la souris dans la fenêtre de la visionneuse de journaux. Saisissez l’expression régulière dans la zone de texte, puis cliquez sur le bouton Filtrer. Seules les entrées correspondant à l’expression régulière spécifiée s’afficheront alors.
La syntaxe des expressions régulières est celle du module re de Python, et la recherche tient compte de la casse. Il n’est pas possible de passer des indicateurs d’expression régulière tels que re.IGNORECASE lors de l’utilisation du filtre d’expression régulière, mais vous pouvez utiliser des indicateurs intégrés dans l’expression régulière elle-même, tels que (?i), pour effectuer une recherche insensible à la casse.
Le filtrage s’applique toujours à l’intégralité du journal ; ainsi, certaines lignes peuvent s’afficher en mode compact sans qu’aucun texte ne soit mis en évidence si le filtre correspond à une partie qui n’est pas affichée. Il est possible de consulter tous les détails de la ligne à l’aide de l’action dans le menu contextuel de la visionneuse de journaux.
Notez que le bouton Filtre permet d’activer ou de désactiver le filtre de texte.
Détails de l’entrée du journal
Pour consulter les détails d’une entrée du journal, vous pouvez cliquer avec le bouton droit de la souris sur l’entrée dans la visionneuse de journaux, puis sélectionner l’action . Une boîte de dialogue s’ouvrira alors, affichant tous les détails de l’entrée du journal, notamment le niveau de journalisation, l’horodatage, le module et la méthode, ainsi que le message.
Enregistrement du journal
La visionneuse de journaux permet d’exporter les entrées du journal vers un fichier texte. Pour enregistrer le journal, cliquez sur le bouton Enregistrer sous… situé en bas de la fenêtre de la visionneuse de journaux. Cela ouvrira une boîte de dialogue dans laquelle vous pourrez indiquer l’emplacement et le nom du fichier journal à enregistrer. Le fichier journal exporté sera au format texte brut et comprendra le niveau de journalisation, l’horodatage, le module et la méthode, ainsi que le message pour chaque entrée du journal. Cela peut être utile pour partager le journal avec d’autres personnes ou pour le joindre à des rapports de bogues lors du dépannage de problèmes avec Picard.
Notez que Enregistrer sous… exportera toutes les entrées du journal, quels que soient les filtres actuellement appliqués dans la visionneuse de journaux. Pour n’exporter qu’une partie du journal, vous pouvez sélectionner les entrées souhaitées dans la visionneuse de journaux, les copier dans le presse-papiers à l’aide de l’action du menu contextuel, puis les coller dans un fichier texte ou un autre document afin de les partager avec d’autres personnes.
Prudence
Même si Picard n’enregistre pas les mots de passe ni d’autres informations de ce type, le fichier journal peut contenir des informations sensibles telles que des chemins d’accès aux fichiers, des noms de plugins et d’autres détails concernant votre système et votre utilisation de Picard. Nous vous recommandons de consulter ce fichier journal et d’en supprimer toute information sensible afin de vous assurer que son contenu ne vous pose aucun problème avant de le partager avec d’autres personnes.