Sembra che abbiamo accesso a Rails.logger e logger all'interno delle applicazioni Rails. Capisco che i due logger sono diversi, ma non sarebbe l'ideale per creare su TaggedBufferedLogger e avere una singola istanza per logger. Perché ci sono due istanze e qual è il momento giusto per usare quale?Perché rails 3.2 utilizza due logger, ActiveSupport :: TaggedLogging e ActiveSupport :: BufferedLogger?
5
A
risposta
7
BufferedLogger è il logger Rails predefinito. Il suo scopo è quello di rendere il logging sicuro. Opzionalmente, è possibile racchiudere questo registratore in un TaggedBufferedLogger e utilizzarlo, se si desidera "taggare" l'output di registrazione.
Direttamente dalle weblog.rails
Tagged logger
When you’re running a multi-user, multi-account application, it’s a great help to be able to filter the log by who did what. Enter the TaggedLogging wrapper. It works like this:
Logger = ActiveSupport::TaggedLogging.new(Logger.new(STDOUT))
Logger.tagged("BCX") { Logger.info "Stuff" } # Logs "[BCX] Stuff"
Logger.tagged("BCX") do
Logger.tagged("Jason") do
Logger.info "Stuff" # Logs "\[BCX\] \[Jason\] Stuff"
end
end
Problemi correlati
- 1. Rails ActiveSupport :: TimeWithZone as_json data format issue
- 2. TimeZone predefinito con ActiveSupport (senza Rails)
- 3. non inizializzati costanti ActiveSupport :: CoreExtensions
- 4. Rails 3.2 avviso di deprecazione della registrazione del silenzio
- 5. Test di ActiveSupport :: TimeWithZone oggetti per l'uguaglianza
- 6. Usa le estensioni core ActiveSupport di Rails fuori dai binari
- 7. Rspec/Rails: non inizializzata costante ActiveSupport :: caricamento automatico (NameError)
- 8. Rails ActiveSupport: come affermare che viene generato un errore?
- 9. Rails 4/ActiveSupport: Dipendenza circolare rilevato durante autoloading costante utente
- 10. Test di ActiveSupport :: Notifiche con rspec
- 11. ActiveSupport :: Prevenendo ed estendendo il modello mongoid
- 12. Come "annidare" l'inclusione dei moduli quando si utilizza la funzionalità Ruby on Rails ActiveSupport :: Concern?
- 13. Impossibile serializzare come ActiveSupport :: HashWithIndifferentAccess più
- 14. ActiveSupport :: Elenco TimeZone di stringhe per offset
- 15. confronto di Data con ActiveSupport :: TimeWithZone fallito
- 16. Come convertire ActiveSupport :: SafeBuffer in String?
- 17. Differenza tra Ruby's Hash e HashWithIndifferentAccess di ActiveSupport
- 18. Rails 3.2 e activeadmin
- 19. Bundler non è riuscito a trovare versioni compatibili per gem "activesupport" e "railties"
- 20. Come analizzare JSON non valido con chiavi non quotate utilizzando ActiveSupport 3 (Rails)
- 21. Come si richiede il metodo rescue_from di ActiveSupport?
- 22. Che cos'è un errore "riferimento argomento circolare" con activesupport time_zone?
- 23. "fixture del metodo non definito 'per ActiveSupport :: TestCase: Class" durante il test con Rails 3.1
- 24. Libreria ActiveSupport Inflection per Past Tense in Ruby?
- 25. Il sovraccarico di un metodo in un ActiveSupport :: preoccupazione
- 26. Come evitare l'avviso di riferimento argomento circolare in activesupport
- 27. Rails 3.2 e YUI Compressor
- 28. Come gestite il conflitto tra ActiveSupport :: JSON e la gemma JSON?
- 29. Rimozione di database.yml quando si usa Mongoid in Rails 3.2
- 30. Impossibile definire più 'incluso' blocchi per una preoccupazione (ActiveSupport :: :: La preoccupazione MultipleIncludedBlocks) con cache_classes = true