लॉग 4net में Logger
कक्षा पर Priority
संपत्ति नहीं है। Priority
का एकमात्र उदाहरण मैं SmtpAppender
में पाया था। तो कोड में मैं चला गया!
XmlHierarchyConfigurator
आप निम्नलिखित कोड मिल जाएगा ParseChildrenOfLoggerElement
विधि में:
if (xmlElement.LocalName == "level" || xmlElement.LocalName == "priority")
{
this.ParseLevel(xmlElement, log, isRoot);
}
आह! दोनों मान एक ही संपत्ति के लिए हल किए जाते हैं (ParseLevel
विधि वास्तव में बहुत कुछ नहीं करती है, "विरासत" मान के असाइनमेंट, लॉगिंग और प्रबंधन के अलावा जो संभव स्तर है) तो वहां आपके पास है; "स्तर" और "प्राथमिकता" आपके कॉन्फ़िगरेशन पर सटीक समान प्रभाव डालता है। मैं इस पुस्तकालय के पिछले संस्करण है, जो this article about log4j द्वारा समर्थित वास्तव में साथ पश्चगामी संगतता के कुछ प्रकार के रखने के लिए किया गया था अनुमान:
log4j के प्रारंभिक संस्करणों में, इन श्रेणी और प्राथमिकता, कहा जाता था, लेकिन अब उन्हें क्रमशः लॉगर और स्तर कहा जाता है।
// ...
XmlElement xmlElement = (XmlElement)xmlNode;
if (xmlElement.LocalName == "logger")
{
this.ParseLogger(xmlElement);
}
else
{
if (xmlElement.LocalName == "category")
{
this.ParseLogger(xmlElement);
}
else
{
if (xmlElement.LocalName == "root")
{
this.ParseRoot(xmlElement);
}
// ...
तो हो गया: के रूप में लकड़हारा हैं स्तर और प्राथमिकता, परस्पर विनिमय कर रहे
वास्तव में, अगर हम "श्रेणी" के लिए खोज, वहाँ XmlHierarchyConfigurator
जो निम्नलिखित कोड शामिल में एक Configure
विधि है और श्रेणी।
दिलचस्प tidbit: पिछले संपत्ति जीतता है, और कोई गुण आप लकड़हारा पर हो सकता था की संख्या के बारे में सीमा नहीं है, तो यह वैध है और स्तर
<root>
<priority value="ALL" />
<priority value="ERROR" />
<level value="DEBUG" />
</root>
वाह डिबग करने के लिए स्थापित करेगा। धन्यवाद। और, आपका "दिलचस्प टिड्बिट" मेरे अगले रहस्य को बताता है। मेरी विरासत में से एक कॉन्फ़िगरेशन फ़ाइलों में से एक रूट के तहत दो प्राथमिक तत्व थे। मैंने माना "अंतिम संपत्ति जीत" और परीक्षण मान्य है, लेकिन अंतर्दृष्टि के लिए धन्यवाद। –
आपका स्वागत है, यह विश्लेषण का एक दिलचस्प हिस्सा था और मेरे पास पहले से ही इस उत्तर से कॉन्फ़िगरेशन पार्सिंग के बारे में कुछ पॉइंटर्स थे: http://stackoverflow.com/questions/23634472/using-ioc-in-a-custom-log4net -appender/23649446 # 23649446 – samy