2011-10-03 9 views
6

में log4j कॉन्फ़िगरेशन मेरे पास ejb.jar अभिलेखागार से बना एक ईएआर है।ईएआर

कहाँ/मैं अपने log4j.xml विन्यास फाइल मेरी EAR में आदेश अलग EJBs के लिए log4j कॉन्फ़िगर करने के लिए जगह चाहिए सकता है?

यहाँ मेरी निम्नलिखित संरचना है:

myEar 
|-- myEjb1.jar 
|-- myEjb2.jar 
|-- myEjb3.jar 
|-- lib 
    | -- myLib1.jar 
    | -- myLib2.jar 

धन्यवाद अग्रिम में!

+0

"अलग-अलग ईजेबी के लिए उन्हें कॉन्फ़िगर करें" के साथ आपका क्या मतलब है? क्या आपको अलग-अलग ईजेबी जारों के लिए अलग-अलग विन्यास की आवश्यकता है? –

उत्तर

8

यदि लॉग 4j कान में विभिन्न मॉड्यूल द्वारा उपयोग किया जाता है, तो इसे कान की lib निर्देशिका में रखा गया जार में रखा जाना चाहिए। लेकिन यह बहुत सुविधाजनक नहीं है क्योंकि जब भी आप लॉग स्तर बदलते हैं तो आपको अपने कान को फिर से इकट्ठा करना होगा और इसे फिर से तैनात करना होगा।

दूसरा विकल्प फ़ोल्डर में log4j कॉन्फ़िगरेशन फ़ाइल डालना और उस फ़ोल्डर को कान के क्लासपाथ में जोड़ना है। अधिकांश ऐप सर्वर इस सुविधा को प्रदान करता है (उदाहरण के लिए वेबस्पेयर)। यह कम पोर्टेबल है लेकिन अधिक प्रबंधनीय है: कान को फिर से तैनात किए बिना कॉन्फ़िगरेशन बदला जा सकता है।

5

के इस सीधा करते हैं: वहाँ परवाह किए बिना कितने EJBs यह होते हैं की अपने उद्यम आवेदन के लिए केवल एक log4j,। इसी प्रकार, केवल एक विन्यास फाइल है। यदि आपको इसे विभिन्न ईजेबी के लिए कॉन्फ़िगर करने की आवश्यकता है, तो आपका विकल्प ईजेबी के कोड में उचित नामित लॉगर्स का उपयोग करना है और उन्हें एक log4j.xml में प्रबंधित करना है।

लॉरेन को इसे कहां रखना है (+1) पर कुछ दिलचस्प सलाह है।

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