J’essaie actuellement de déboguer des requêtes lentes qui ne se produisent que dans les environnements exécutés en mode production. J’ai remarqué que le niveau de journalisation semble être codé en dur en mode production (référence de code) sans possibilité de le configurer directement. J’aimerais changer ce niveau de journalisation en debug (au moins temporairement) afin de pouvoir voir plus d’informations ; existe-t-il un moyen d’y parvenir ?
J’ai essayé des solutions de contournement assez bancales qui impliquaient de changer le niveau de journalisation pendant l’exécution avec la console Rails, mais aucune de ces astuces n’a permis aux requêtes de base de données d’apparaître dans les journaux de débogage (si je faisais manuellement des journaux de débogage avec Rails.logger.debug dans la console Rails, ceux-ci apparaissaient après les astuces, cependant).
Merci !
P.S. Juste pour apaiser toute inquiétude potentielle concernant mon commentaire ci-dessus sur les problèmes qui ne se produisent qu’en environnement de production, j’utilise Discourse d’une manière assez non standard qui implique un grand nombre de catégories ; les problèmes que je rencontre ne sont probablement pas rencontrés par d’autres instances de Discourse.
En mode production, il agrège les erreurs similaires en identifiant les traces de pile, en écoutant les avertissements/erreurs et les messages fatals. L’intention est d’afficher une liste des problèmes d’application ouverts qui peuvent être résolus d’une manière ou d’une autre.
En mode développement, il fournit un flux complet de tous les logs produits par Rails (debug et supérieur). Cela présente des avantages significatifs par rapport à la console car vous avez un accès approprié aux traces de pile pour chaque ligne de log.
Merci.
Cela semble logique pour le cas général.
Cependant, cela semble déraisonnablement restrictif et devrait être configurable pour des circonstances spéciales ?
Cela inclut les moments où vous avez des cas limites en production que vous souhaitez examiner.