2012-01-31 8 views
19

जब मैं अनुलग्नक के साथ एक ईमेल भेजता हूं तो डेटा हेक्स में लॉग होता है और मेरा पूरा लॉग भरता है। अनुलग्नकों के लॉगिंग को अक्षम करने का कोई तरीका है? मुझे पता है कि मैं config.action_mailer.logger = nil के साथ मेलर लॉगिंग अक्षम कर सकता हूं।रेल संलग्नकों को ईमेल संलग्नक लॉगिंग से रोकें

उत्तर

0

Application.rb में आप अनुलग्नक पैरामीटर को फ़िल्टर करने का प्रयास कर सकते हैं। लॉगिंग स्तर, गैर उत्पादन वातावरण के लिए डिफ़ॉल्ट स्तर :debug पर सेट है मेरा मानना ​​है कि इस समस्या को हल करना चाहिए, लेकिन मैं इसे अपने आप

config.filter_parameters += [:attachment] 
+1

'filter_parameters' फ़िल्टरिंग पैरामीटर के बारे में है जो ** ** आपकी साइट पर भेजा गया है, नहीं? – m33lky

+0

मेरी समझ है और हमेशा यह रहा है कि filter_parameters उस पैरामीटर को लॉग पर मुद्रित होने से रोकता है, इस तरह आप लॉग फ़ाइल –

+1

पर गलती से क्रेडिट कार्ड नंबर या पासवर्ड प्रिंट नहीं करते हैं। लेकिन अगर मैं मेलर व्यू _rendering_ कर रहा हूं, तो मुझे नहीं लगता कि यह एक जीईटी या पोस्ट पैरामीटर के रूप में दिखाई देगा, क्योंकि यह दूसरी दिशा में जा रहा है। – m33lky

11

दुर्भाग्य से परीक्षण नहीं किया, संलग्नक लॉग में शामिल किए गए हैं। इसका मतलब है कि उत्पादन में आपको ठीक होना चाहिए, लेकिन परीक्षण के दौरान आपके देव और स्टेजिंग वातावरण फूट सकते हैं। आप अपने पूरे ऐप (config.log_level = :info) के लिए लॉगिंग बंद कर सकते हैं, लेकिन यह आदर्श रूप से आदर्श से कम है।

आप एक कस्टम लकड़हारा कॉन्फ़िगर कर सकते हैं:

config.action_mailer.logger = ActiveSupport::BufferedLogger.new("mailer.log") 
config.action_mailer.logger.level = ActiveSupport::BufferedLogger::Severity::INFO 

यह लॉग विभाजित होगा, लेकिन आप कार्रवाई मेलर के लिए लॉगिंग स्तर परिवर्तन अलग कर सकते हैं।

+6

रेल 4 में, आपको 'ActiveSupport :: Logger' का उपयोग करना चाहिए क्योंकि 'ActiveSupport :: BufferedLogger' को घटा दिया गया है ([स्रोत] (http://edgeguides.rubyonrails.org/4_0_release_notes.html#active-support-deprecations) । –

संबंधित मुद्दे