0
我正在使用Mongoid與MongoDB進行交互。在開發中,我通常喜歡看Mongo正在做什麼的日誌。但是,有一種情況我只是不想看到過多的冗餘日誌記錄。如何在這種特定情況下禁用日誌記錄?Ruby Mongo:如何禁用某些集合的日誌記錄?
我正在使用Mongoid與MongoDB進行交互。在開發中,我通常喜歡看Mongo正在做什麼的日誌。但是,有一種情況我只是不想看到過多的冗餘日誌記錄。如何在這種特定情況下禁用日誌記錄?Ruby Mongo:如何禁用某些集合的日誌記錄?
似乎沒有任何干淨的方式來控制每個集合Mongoid的日誌記錄。 但是,爲了您的目的,如果您能夠識別個別呼叫,您可以通過提高等級暫時關閉日誌記錄 。 希望這對你的目的來說足夠好。
require 'test_helper'
def dont_log(temp_level = Logger::Severity::UNKNOWN)
logger = Rails.logger
old_level, logger.level = logger.level, temp_level
yield
logger.level = old_level
end
class LogDoTest < ActiveSupport::TestCase
def setup
LogDo.delete_all
LogDont.delete_all
end
test "log do dont" do
LogDo.create(text: 'Log me')
dont_log{ LogDont.create(text: 'Dont log me') }
end
end
這可能是我感興趣的內容:http://stackoverflow.com/a/30292413/1566187 – Elyasin