मुझे कक्षा में एक विधि है जो बहुत वर्बोज़ है, और इससे लॉग पढ़ने में कठिनाई होती है। मैं उसी विधि के स्तर को बदलकर अपनी लॉगिंग को कम करना चाहता हूं, उसी वर्ग में अन्य विधियों को अनलर्टर छोड़कर। क्या यह संभव है?क्या मैं log4j का उपयोग कर जावा विधि के भीतर लॉगिंग स्तर सेट कर सकता हूं?
उत्तर
आप उस वर्ग के लिए स्तर कॉन्फ़िगरेशन बदल सकते हैं लेकिन कक्षा में विशिष्ट तरीकों के लिए नहीं। जो भी आप चाहते हैं उसे करने का एकमात्र तरीका उस विधि के अंदर एक अलग लॉगर का उपयोग करना होगा और फिर उसे एक अलग स्तर पर कॉन्फ़िगर करना होगा।
उम्मीद है कि इससे मदद मिलती है।
मुझे नहीं लगता कि यह सीधे posible केवल एक विधि के लिए लॉगिंग प्रक्रिया में परिवर्तन करना
आप एक प्रति विधि के आधार पर लॉगिंग स्तर को बदल नहीं सकते है। "लॉगर" नियंत्रण के लिए ग्रैन्युलरिटी का बेहतरीन स्तर है। आम तौर पर, लॉगर इंस्टेंस और कक्षाओं के बीच एक-से-एक संबंध होता है ... हालांकि यह इस बात पर निर्भर करता है कि एप्लिकेशन को कोड कैसे किया गया था।
यदि आप कोड बदल सकते हैं, तो मैं अनुशंसा करता हूं कि आप शोर विधि के लिए विशेष लॉगर ऑब्जेक्ट बनाएं ताकि आप मौजूदा लॉगर का उपयोग करने वाले दूसरे कोड से स्वतंत्र रूप से इसे नियंत्रित कर सकें।
(या शायद सिर्फ विधि के लकड़हारा कॉल बदल जाते हैं।) आप कोड को बदल नहीं सकते हैं, तो आप इस तरह के लॉग फाइल के बाद प्रसंस्करण, या लेखन और एक कस्टम Appender
कि को दबा को विन्यस्त के रूप में करने के लिए "हैक" का सहारा लेना पड़ सकता है अवांछित लॉग संदेश।
यह संभव है। ओपी पर मेरी टिप्पणी देखें।
यह चाल एक कस्टम स्तर (TRACE से कम) बना रही है (जैसा कि here में बताया गया है) और उस वर्जन स्तर को बहुत वर्बोज़ विधियों में उपयोग करें।
उस विधि में OFC आप लॉगिंग विधियों के लिए उपयोगकर्ता लॉगर शॉर्टकट नहीं करेंगे, लेकिन आपको Logger.log (स्तर, ऑब्जेक्ट) और Logger.log (स्तर, ऑब्जेक्ट, थॉवेबल) विधियों का सहारा लेना चाहिए।
- 1. मैं Log4J के साथ अपने BlazeDS कार्यान्वयन कैसे सेट कर सकता हूं?
- 2. मैं जार के लिए log4j लॉगिंग कैसे कॉन्फ़िगर कर सकता हूं?
- 3. क्या मैं Web.config का उपयोग कर आईआईएस 7 लॉगिंग कॉन्फ़िगर कर सकता हूं?
- 4. मैं जावा c3p0 कनेक्शन पूलिंग lib में लॉगिंग कैसे बंद कर सकता हूं?
- 5. क्या मैं रूबी में हेरेडोक के भीतर एक चर का उपयोग कर सकता हूं?
- 6. क्या मैं शैलियों.एक्सएमएल का उपयोग कर अपने एक्शनबार का होम आइकन सेट कर सकता हूं?
- 7. क्या मैं .NET में "System.Currency" का उपयोग कर सकता हूं?
- 8. क्या मैं वैश्विक स्तर पर HTTP कनेक्शन का टाइमआउट सेट कर सकता हूं?
- 9. जावास्क्रिप्ट का उपयोग कर फ़्रेमसेट फ्रेम के भीतर से मैं तत्व कैसे प्राप्त कर सकता हूं?
- 10. मैं "।" का उपयोग कैसे कर सकता हूं जावा
- 11. क्या मैं सिर्फ सॉकेट का उपयोग कर जावा और सी # के बीच संवाद कर सकता हूं?
- 12. क्या मैं जावा के HttpUrlConnection क्लास का उपयोग कर होस्ट हेडर को ओवरराइड कर सकता हूं?
- 13. मैं जावा के भीतर से उमास्क कैसे सेट कर सकता हूं?
- 14. मैं एंड्रॉइड क्रोमियम में लॉगिंग कैसे सक्षम कर सकता हूं?
- 15. log4j दो बार लॉगिंग
- 16. जावा एक्जिक्यूटर्स: मैं कार्य प्राथमिकता कैसे सेट कर सकता हूं?
- 17. मैं जावा में जावास्क्रिप्ट का उपयोग कैसे कर सकता हूं?
- 18. क्या मैं जीएई पर वसंत का उपयोग कर सकता हूं?
- 19. क्या मैं वाईएक्स का उपयोग कर एक कस्टम लाइसेंस सेट कर सकता हूं?
- 20. मैं एक बटन का आकार कैसे सेट कर सकता हूं?
- 21. क्या मैं PHP में फ़ंक्शंस के भीतर स्थिरांक का उपयोग कर सकता हूं?
- 22. क्या मैं ऑर्चर्ड सीएमएस के भीतर अपने निनजेक्ट .NET प्रोजेक्ट का उपयोग कर सकता हूं?
- 23. YASnippet का उपयोग करके स्निपेट के भीतर मैं स्निपेट का विस्तार कैसे कर सकता हूं?
- 24. क्या मैं रूबी का उपयोग कर अपने भीतर से लैम्ब्डा का संदर्भ ले सकता हूं?
- 25. क्या मैं विधि में कोड का निरीक्षण करने के लिए प्रतिबिंब का उपयोग कर सकता हूं?
- 26. मैं एसएसएमएस के भीतर से एसक्यूएल फाइलों का एक सेट कैसे निष्पादित कर सकता हूं?
- 27. क्या मैं जेवीएम में डीएलएल इंजेक्ट कर सकता हूं और जेएनआईएनएनवी प्राप्त कर सकता हूं?
- 28. क्या मैं संग्रहीत प्रक्रिया के भीतर एक डिफ़ॉल्ट स्कीमा सेट कर सकता हूं?
- 29. क्या मैं एक गैर वर्चुअल विधि ओवरराइड करने वाली विधि का उपयोग कर सकता हूं?
- 30. मैं WebGL का उपयोग कर कैनवास पर पिक्सेल का रंग कैसे सेट कर सकता हूं?
आप अपना खुद का लॉगिंग स्तर घोषित कर सकते हैं और उस विधि में इसका उपयोग कर सकते हैं। एक और तरीका थोड़ा हैकी है और विधि में लॉग स्तर को बढ़ाने में शामिल है (Logger.setLevel() के माध्यम से), लेकिन यह वास्तव में चालाक है – BigMike