के लिए लॉग 4j लॉगर अनजान स्ट्रैट्स 2 अपवादों को फंसाने के लिए मैं अपने log4j.xml में कौन सा लॉगर सूचीबद्ध करता हूं?स्ट्रैट्स 2 अपवाद इंटरसेप्टर
मैं निम्नलिखित कोड मेरे struts.xml में घोषणा की है:
<package name="default" extends="struts-default">
<interceptor-stack name="defaultStack">
<interceptor-ref name="timer"/>
<interceptor-ref name="logger"/>
<interceptor-ref name="exception">
<param name="logEnabled">true</param>
<param name="logCategory">error.unhandled</param>
<param name="logLevel">WARN</param>
</interceptor-ref>
</interceptor-stack>
</package>
मेरी log4j.xml फ़ाइल में, मैं निम्नलिखित लकड़हारा घोषणा की है:
<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%p [%c] - %C{1}.%M(%L) | %m%n"/>
</layout>
</appender>
<logger name="error.unhandled">
<level value="DEBUG"/>
<appender-ref ref="CONSOLE" />
</logger>
हालांकि, जब Struts एक फेंकता अपवाद, यह log4j द्वारा ठीक से लॉग नहीं है। मुझे पता है कि मेरा log4j.xml सही ढंग से पार्स किया जा रहा है क्योंकि मैं मैन्युअल रूप से जावा त्रुटि को "error.unhandled" नामक लॉगर के साथ बना सकता हूं और सीधे इसे ERROR स्तर संदेश लिख सकता हूं। एक सहयोगी ने यह भी सुझाव दिया कि मुझे log4j.logger.error.unhandled लॉगर को फँसाने का प्रयास करना चाहिए, लेकिन यह भी काम नहीं करता है।
अपवाद इंटरसेप्टर के लिए स्ट्रूट 2 का कौन सा लॉगर उपयोग करता है?
क्या आप मैन्युअल रूप से WARN स्तर पर कुछ लॉग इन कर सकते हैं और इसे लॉग में दिखा सकते हैं? – skaffman
आप किस प्रकार का कंटेनर तैनात कर रहे हैं? (यानी टोमकैट, जेबॉस, वेबस्फेयर) –