[英]Why are there so many Rails loggers, and why are there locks on them?
我一直在運行一個可以訪問Rails環境的守護進程 。 通過四處搜索,我發現這樣做時需要處理兩件事:
我了解需要重新初始化與數據庫的連接,但無需重新初始化記錄器。 我看到了這段代碼 , 該代碼旨在使在Rails中運行守護進程更加容易。 它為以下每個創建新的BufferedLogger實例: Rails
, ActiveRecord::Base
, ActionController::Base
, ActionMailer::Base
我不清楚兩件事:
logger.info
,是否不使用相同的rails logger? 我發現的一件事是,有很多人很難理解Rails記錄器。 如果已經有一些博客文章涉及此主題,請告訴我!
好吧,我認為Rails 3中引入了4個記錄器。其背后的想法是,每個組件(ActiveRecord,ActionPack,ActionMailer)並不是真正相互依賴的,應該可以獨立使用它們。 因此,每個人都有自己的記錄器對象的原因。 我認為這是在Railies gem中,所有這4個記錄器基本上都設置為相同的實例,因此,在其中任何一個上調用logger.info都將意味着相同的結果。 但是從理論上講,您可以將ActiveRecord記錄器設置為其他類型。
至於為什么記錄器需要重新初始化,我不知道...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.