Was?
Fügen Sie Unterstützung für ActiveRecord::QueryLogs.prepend_comment als natürliche Erweiterung der vorhandenen Funktion für Abfrageprotokoll-Tags hinzu. Diese neue Einstellung funktioniert neben der aktuellen Umgebungsvariable RAILS_QUERY_LOG_TAGS.
Warum?
Abfrageprotokoll-Tags sind für die Fehlersuche äußerst nützlich, aber es gibt einen Haken: Bei langen, komplexen Abfragen kürzen PostgreSQL und andere Datenbanken die Protokolle oft. Wenn dies geschieht, gehen die wertvollen Kontexte von Abfrage-Tags (die standardmäßig am Ende angehängt werden) verloren, was es schwierig macht, nachzuvollziehen, welcher Teil Ihrer Anwendung die Abfrage generiert hat.
Durch die Aktivierung von prepend_comment werden die Abfrage-Tags an den Anfang der SQL-Abfrage verschoben, anstatt ans Ende. Dies stellt sicher, dass Sie auch dann, wenn Abfragen in den Protokollen gekürzt werden, immer noch die kritischen Debugging-Informationen wie Controller-Namen, Aktionsnamen und Job-Informationen sehen können.
Wie?
Die Funktion sollte opt-in sein und folgt dem bestehenden Muster von Discourse für die Konfiguration:
- Aktivieren Sie Abfrageprotokoll-Tags (falls noch nicht aktiviert):
RAILS_QUERY_LOG_TAGS=1 - Aktivieren Sie das Präfix-Kommentar:
RAILS_QUERY_LOG_PREPEND_COMMENT=1
Die Funktion wird nur aktiviert, wenn beide Bedingungen erfüllt sind: Abfrageprotokoll-Tags müssen aktiviert sein und das Präfix-Kommentar-Flag muss gesetzt sein. Dies gewährleistet die Abwärtskompatibilität und gibt Betreibern eine feingranulare Kontrolle über ihre Protokollkonfiguration.
Implementierungs-PR: Add support for ActiveRecord::QueryLogs.prepend_comment by mudit-1996 · Pull Request #35888 · discourse/discourse · GitHub