2011-07-11 100 views
0

我在我的Apache的錯誤日誌越來越不受歡迎的廢棄警告:如何不在apache錯誤日誌上打印棄用警告?

/srv/www/<application>/shared/bundle/ruby/1.8/gems/actionpack-3.0.7/lib/action_view/paths.rb:15: warning: Object#id will be deprecated; use Object#object_id 

我想不會在生產時打印這些廢棄警告。

我試圖把它添加到我的enviromenents/production.rb文件:

config.active_support.deprecation = nil 

config.active_support.deprecation = :stderr 

config.active_support.deprecation = :notify 

config.active_support.deprecation = :log 

雖然,我沒有任何這些選項的成功,因爲Apache日誌繼續得到我的棄用警告。

有誰知道我應該怎麼做?

回答

1

這個特殊的警告是由Ruby本身打印的,它與active_support沒有任何關係。我看到的唯一方法是禁用所有stderr輸出,但我懷疑它是你想要的。

補充:

抓住它本應幫助:

class Object 
    def id 
    raise 
    end 
end 
+0

謝謝,你知道是否有任何方法讓我獲得棄用調用的堆棧跟蹤? –

+1

查看編輯答案 –

1

這取決於。什麼是輸出棄用警告?如果它是rails外的gem(不是active-something或action-something),它可能只是將它打印到STDERR,這會導致它被打印到錯誤日誌中。

我的建議是修正使用棄用方法的任何內容,看看可能有其不推薦使用的原因。

+0

到現在爲止,我還是不希望修復棄用警告的原因。正如你在我上次編輯中看到的,該對象屬於action_view。 –