Wie kann ich die ausführliche Aufzeichnung aktiver Protokolle in der Produktion deaktivieren? (Wie jede SQL-Anweisung wird protokolliert) Meine Protokolle füllen sich sehr schnell, weil ich im Hintergrund viele Abfragen ausgeführt habe. Dies ist in Ordnung auf meinem Entwicklungsserver, aber ich brauche diese eingeloggte Produktion nicht.Aktiviere Aufzeichnungsprotokollierung in Produktion deaktivieren
Antwort
vollständig ausschalten, um nur diese Datei zu Ihrer Umgebung hinzufügen (dh production.rb
):
config.active_record.logger = nil
Siehe AR guide (Abschnitt 3.6):
config.active_record.logger akzeptiert einen Logger konform an die Schnittstelle von Log4r oder die Standard-Ruby Logger-Klasse, die dann an alle neuen Datenbankverbindungen weitergegeben wird. Sie können diese Protokollfunktion abrufen, indem Sie entweder eine Active Record-Modellklasse oder eine Active Record-Modellinstanz aufrufen. Auf Null setzen, um die Protokollierung zu deaktivieren.
Es gibt mehr Optionen (wie selektiv Ein/Ausschalten) in anderen Beiträgen dokumentiert. Siehe Disable Rails SQL logging in console als Ausgangspunkt.
Danke. Am Ende habe ich ActiveRecord :: Base.logger = nil in den Job eingefügt, den ich nicht protokollieren wollte –
- 1. Android deaktivieren Produktion apk
- 2. Deaktivieren Chrom reagieren DevTools für die Produktion
- 3. Deaktivieren Ember.Logger.log() in der Produktion Build von Code
- 4. Aktiviere Fenstertitel in X
- 5. Logs von XCGLogger bei der Produktion vollständig deaktivieren
- 6. Swagger Sails JS in der Produktion
- 7. Wie aktiviere/deaktiviere ich Links mit jQuery?
- 8. Laravel Projekt in Produktion
- 9. Python SimpleHTTPServer in Produktion
- 10. CouchDB in Produktion
- 11. Symfony3 Routing in Produktion
- 12. Selbstsigniertes Zertifikat in Produktion
- 13. Angular2 in Produktion
- 14. Debug-Cache-gesprengten Skripte in der Produktion
- 15. Aktiviere JaxbAnnotationModule auf Wildfly
- 16. sollten Sie deaktivieren reagieren transformations hmr in Produktion unter Verwendung von `env` Abschnitt in Babel Konfiguration
- 17. Wie aktiviere ich ein deaktiviertes Kontrollkästchen dynamisch?
- 18. Wie aktiviere ich einen "Kiosk-Modus" programmatisch in ipad?
- 19. Wie aktiviere ich C++ 11 in gcc?
- 20. Wie aktiviere ich Eban Enhancement in Maven?
- 21. Wie aktiviere ich Spracherweiterungen in GHCi?
- 22. Wie aktiviere ich JMX in ActiveMQ 5.2
- 23. Aktiviere DjangoTemplates Syntaxhervorhebung in PyCharm 2016
- 24. Wie aktiviere ich Fortsetzungen in Scala?
- 25. Wie aktiviere ich Zeilennummern in VS2008?
- 26. Aktiviere Live Sass DevTools Experiment
- 27. DB Verbindungsproblem in der Produktion
- 28. Mono in der Produktion Websites?
- 29. Neo4j mit C# in Produktion
- 30. Laufender Django-Sellerie in Produktion
Nicht sagen, dass ich nicht mit Ihnen einverstanden bin, aber ich mag es, die SQL-Protokolle zu behalten und Probleme mit der Protokolldateigröße durch Rotation zu behandeln. Hast du dieses Setup? Wenn nicht, auf welchem Betriebssystem sind Sie in prod? – steakchaser
Mein Problem ist, ich benutze Papertrail auf Heroku und wenn ich nicht die Größe des Logs kontrolliere ich in wenigen Minuten die Datenübertragung auslaufen. Ich brauche das nur für diesen bestimmten Hintergrundjob nicht geloggt. Also, wenn es eine Möglichkeit gibt, es "vorübergehend" auszuschalten, könnte das auch funktionieren –