Ciao!\n\nSto attualmente cercando di eseguire il debug di alcune query lente che si verificano solo in ambienti in modalità di produzione. Ho notato che il livello di log sembra essere codificato in modalità di produzione (riferimento al codice) senza alcun modo per configurarlo direttamente. Vorrei cambiare questo livello di log in debug (almeno temporaneamente) in modo da poter visualizzare maggiori informazioni; c’è un modo per farlo?\n\nHo provato alcuni workaround piuttosto “hacky” che prevedevano la modifica del livello di log durante l’esecuzione con la console Rails, ma nessuno degli hack ha portato le query DB a comparire nei log di debug (sebbene i log di debug manuali con Rails.logger.debug nella console Rails comparissero dopo gli hack).\n\nGrazie!\n\nP.S. Solo per placare eventuali preoccupazioni riguardo al mio commento sopra sui problemi che si verificano solo in ambienti di produzione, sto usando Discourse in un modo piuttosto non standard che coinvolge un gran numero di categorie; i problemi che sto affrontando probabilmente non sono riscontrati da altre istanze di Discourse. :)\n
Questo mi sta confondendo ultimamente.

Ho confermato di avere il livello di log “info”, eppure nessuna quantità di:
Rails.logger.info "blah blah blah"
viene visualizzata e /errors rimane ostinatamente su “warn” - cosa mi sfugge?
Qualcuno ha una soluzione a questo?
È molto frustrante

… eppure non riesco a vedere i log di livello Info in /logs!
Attivare “info” non fa nulla:
Non sono sicuro di come dovremmo diagnosticare certi tipi di problemi che si verificano solo in Produzione senza questo… ![]()
Cosa sta bloccando i log di livello info?
Altre cose che ho provato:
- Ho controllato
production.loge le informazioni che desidero ci sono! - Ho esaminato l’output di
Logster.configsulla console Rails e non è palesemente utile. - idem
/vendor/bundle/ruby/3.2.0/gems/logster-2.19.1/lib/logster/configuration.rb
Quindi sono ancora a corto di idee sul perché i log di livello info non vengano visualizzati in /logs
Chiaramente qualcosa sta filtrando i log di livello info tra production.log e Logster.
Se ho capito bene, per design sta sopprimendo i livelli info e debug in modalità produzione. Blaming logster/lib/logster/rails/railtie.rb at main · discourse/logster · GitHub
store.level = Logger::Severity::WARN if Rails.env.production?
In modalità produzione aggrega errori simili tramite fingerprinting dei backtrace, ascoltando messaggi di avviso/errore e fatali. L’intenzione è visualizzare un elenco di problemi aperti dell’applicazione che possono in qualche modo essere risolti.
In modalità di sviluppo fornisce un flusso completo di tutti i log prodotti da Rails (debug e superiori). Questo presenta vantaggi significativi rispetto alla console poiché si ha un accesso corretto ai backtrace per ogni riga di log.
Grazie.
Ha senso per il caso principale.
Tuttavia, ciò sembra irragionevolmente restrittivo e dovrebbe essere configurabile per circostanze speciali?
Ciò include i momenti in cui si verificano casi limite in produzione che si desidera indagare.
