2008-09-23 6 views
6

Avec les nouvelles options de mise en cache dans Rails 2.1 i obtenez de belles entires dans mon journal le long des lignes deRails Caching Log Level

Cached fragment hit: views/homepage (0.16549)

Cependant, ils sont enregistrés au niveau :debug, qui est au même niveau que la sortie SQL. Je veux être en mesure de désactiver la sortie SQL, et toujours voir les informations de cache. Comment puis-je faire

Répondre

12

bien vous pourriez instancier un enregistreur spécifique pour ActiveRecord et définir son niveau de journal à: info tout en laissant l'enregistreur par défaut au debug ...

ActiveRecord::Base.logger = Logger.new("#{RAILS_ROOT}/log/#{RAILS_ENV}_database.log") 
ActiveRecord::Base.logger.level = Logger::INFO # should set the log_level to info for you 

de http://wiki.rubyonrails.org/rails/pages/HowtoConfigureLogging

ou vous pouvez rouvrir AbstractAdapter et remplacer le journal (sql, nom) méthode il ne fait rien

http://api.rubyonrails.com/classes/ActiveRecord/ConnectionAdapters/AbstractAdapter.html#M001242

+0

Cest refroidissent, w Quelle est la syntaxe pour définir le nouveau journal en info? 'ActiveRecord :: Base.logger.level =: info' provoque des erreurs d'exécution –