2010-09-03 16 views
7

मैं कैसे सुनिश्चित कर सकता हूं कि मेरे लॉग 4j का उपयोग करने वाले सभी टाइमस्टैम्प जीएमटी में हैं?लॉग 4 जे; रूपांतरणपटल का उपयोग करके जीएमटी में टाइमस्टैम्प हमेशा कैसे सुनिश्चित करें?

मैं कोशिश की है निम्नलिखित लेकिन यह प्रिंट "GMT" टाइमस्टैम्प अंदर

log4j.appender.ConversionPattern=%d{HH\:mm\:ss,SSS}{GMT} %-4r %-5p [%t] %3x - %m%n 

उत्तर

10

मैं log4j-1.2.16 है और निम्नलिखित लाइनों को ठीक से काम:

log4j.appender.A1.layout=org.apache.log4j.EnhancedPatternLayout 
log4j.appender.A1.layout.ConversionPattern=%d{ISO8601}{GMT} [%-5p] [%t] [%F:%L] - %m%n 

यदि यह 'नहीं करता है टी काम नहीं करते हैं, तो आपको अतिरिक्त (कंपोनियो सेक्शन) डाउनलोड करना होगा। इस पैकेज में एन्हांस्डपटरर्नआउट है: Download apache-log4j-extras

+1

यह लॉग 4j-1.2.17 का उपयोग करके भी मेरे लिए काफी काम नहीं करता है। इसके बजाय, मुझे ISO8601 के लिए स्पष्ट प्रारूप स्ट्रिंग प्रदान करना पड़ा:% d {yyyy-MM-dd'T'HH: mm: ssX} {GMT} – asieira

+0

@asieira: log4j 1.2.16 के बाद से, log4j-extras से 'उन्नत पैटरर्नआउट' मानक log4j 1 वितरण ([changelog] (https://logging.apache.org/log4j/1.2/changes-report.html#a1.2.16) में शामिल है, [बग] (https: //bz.apache। संगठन/बगजिला/show_bug.cgi? id = 48927)), और समय क्षेत्र विनिर्देश इस उत्तर में दिए अनुसार कार्य करता है। अगर यह आपके मामले में काम नहीं करता है, तो मैं केवल एक बॉट किए गए वितरण या कॉन्फ़िगरेशन को मान सकता हूं। – zb226

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