आप रेल कंसोल में डेटाबेस आउटपुट कैसे छिपा सकते हैं?


103

रेल के नए संस्करण में, मैं 3 अप से अनुमान लगा रहा हूं, डेटाबेस क्वेरी कंसोल पर आउटपुट हैं। यह अधिकतर समय उपयोगी होता है, लेकिन जब आप इसे देखना नहीं चाहते हैं तो आप इसे कैसे छिपा सकते हैं?

जवाबों:


177

इसे करने का एक बेहतर तरीका यह है कि इसे कंसोल में टाइप करें:

ActiveRecord::Base.logger.level = 1 

क्योंकि यह समस्या को रोकने के लिए एक लकड़हारे के लिए एक सूचक का उपयोग करने की कोशिश करता है जो शून्य पर सेट है (स्रोत: कंसोल में SQL लॉगिंग को अक्षम करें )

इसे वापस चालू करने के लिए

ActiveRecord::Base.logger.level = 0

31
धन्यवाद। और इसे वापस चालू करने के लिए ActiveRecord::Base.logger.level = 0
Thebenedict

किसी भी विचार कैसे Mongoid के साथ यह करने के लिए?
जेसी किसान


9

संक्षिप्त उत्तर ... फ़ाइल में development.rb परिवर्तित करें या इसका मान जोड़ें config.log_levelताकि एक पंक्ति जैसी हो

config.log_level = :info

1
नहीं, इससे कंसोल में चल रहे व्हाट्सएप पर कोई प्रभाव नहीं पड़ता है। इसके अलावा, मैं एक समाधान पसंद करूंगा जिसमें मुझे प्रोजेक्ट फ़ाइलों को बदलने की आवश्यकता न हो।
रोजर इरतेस्वाग

ठीक है, समाधान मेरे लिए webrick के साथ काम करता है लेकिन आप अन्य सर्वर का उपयोग कर रहे हैं या उत्पादन या परीक्षण मोड में चल सकते हैं?
madth3

3
यह लॉग फ़ाइलों की सामग्री को बदलने के लिए काम करता है। लेकिन सवाल रेल कंसोल के बारे में है, लॉग फाइल के बारे में नहीं।
रोजर एर्टेस्वाग

6

मेरे एक दोस्त से:

your_query; nil

1
अपनी पोस्ट की गुणवत्ता में सुधार करने के लिए कृपया शामिल करें कि आपकी पोस्ट समस्या का समाधान कैसे / क्यों करेगी।
मिक मैक्लम

7
यह आपके रूबी कंसोल को एक्सप्रेशन के परिणामों को डंप करने से रोकने के लिए कंसोल करने के लिए जा रहा है, लेकिन यह ActiveRecord को चक्रीय जानकारी को रेल लॉगर में डंप करने से रोकने वाला नहीं है।
6

1
पिछले टिप्पणीकारों के लिए: यह प्रश्न का उत्तर देता है, और यह एकमात्र उत्तर है जो मेरे लिए काम करता है, इससे अधिक क्या चाह सकता है?
वैलकम

3
मुझे नहीं लगता कि यह सवाल का जवाब देता है। जैसा कि @eremzeit ने कहा, यह आपके कंसोल पर डंप किए गए सभी सीक्वल प्रश्नों को नहीं रोकेगा, यह केवल उस कमांड के रिटर्न वैल्यू को प्रिंट होने से
रोकेगा

1
यह प्रश्न का उत्तर नहीं देता है, लेकिन परिणामों को न दोहराने के लिए उपयोगी है
रटगर

4

रेल 3.2 में, सेटिंग

config.logger.level = Logger::INFO

SQL आउटपुट बंद करने के लिए मेरे लिए ठीक काम किया।


क्या यह अभी भी लॉग फ़ाइल में SQL आउटपुट लॉग करता है, हालांकि?
यहोशू पिंटर

-2

मैं देखता हूं कि आपको पहले से ही आपका आवश्यक उत्तर मिल गया है, हालांकि मैं आपको 'शांत संपत्ति' मणि की सलाह देना चाहूंगा, अधिकांश लॉग डेटा परिसंपत्ति संकलन और निष्कर्ष होंगे, यह मणि हटा देगा और अभी भी प्रश्नों और डेटा व्यवहार को आउटपुट करेगा।

मज़े करो


1
यह सवाल कंसोल के आउटपुट के बारे में है, लॉग फाइल के बारे में नहीं
रोजर इरतेस्वाग
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.