खोज…


विन्यास फाइल

विन्यास

Log4j कॉन्फ़िगरेशन फ़ाइल इनमें से किसी भी प्रारूप में हो सकती है:

  • JSON
  • YAML
  • गुण (पाठ फ़ाइल)
  • एक्सएमएल

कॉन्फ़िगरेशन खोज

  1. Log4j log4j.configurationFile सिस्टम प्रॉपर्टी का निरीक्षण करेगा और यदि सेट किया गया है, तो कॉन्फ़िगरेशन लोड करने का प्रयास करेगा।
  2. यदि कोई सिस्टम प्रॉपर्टी सेट नहीं है, तो log4j classpath में log4j2-test.properties तलाश करेगा।
  3. यदि ऐसी कोई फ़ाइल नहीं मिली है, तो log4j2-test.yaml या log4j2-test.yml को log4j2-test.yml में log4j2-test.yml
  4. यदि ऐसी कोई फ़ाइल नहीं मिली है, तो log4j log4j2-test.json या log4j2-test.jsn लिए दिखेगा।
  5. यदि ऐसी कोई फ़ाइल नहीं मिली है, तो logj4 classpath में log4j2-test.xml की तलाश करेगा।
  6. यदि कोई परीक्षण फ़ाइल स्थित नहीं हो सकती है तो log4j classpath पर log4j2.properties लिए दिखेगा।
  7. यदि गुण फ़ाइल स्थित नहीं हो सकती है तो log4j classpath पर log4j2.yaml या log4j2.yml लिए दिखेगा।
  8. यदि कोई YAML फ़ाइल स्थित नहीं हो सकती है तो log4j, classpath पर log4j2.json या log4j2.jsn लिए दिखेगा।
  9. यदि JSON फ़ाइल स्थित नहीं हो सकती है तो log4j classpath पर log4j2.xml का पता लगाने की कोशिश करेगा।
  10. यदि कोई कॉन्फ़िगरेशन फ़ाइल स्थित नहीं हो सकती है तो DefaultConfiguration का उपयोग किया जाएगा। यह कंसोल में जाने के लिए लॉगिंग आउटपुट का कारण होगा।

XML कॉन्फ़िगरेशन

XML उदाहरण

नीचे दिया गया कॉन्फ़िगरेशन दो एपेंडर्स (लॉग आउटपुट) को कॉन्फ़िगर करता है। पहला मानक सिस्टम आउटपुट (कंसोल) और दूसरा लॉग फाइल करने के लिए लॉग करता है। इस उदाहरण में, फ़ाइल का स्थान स्टेटिक रूप से कॉन्फ़िगरेशन (ऐपेंडर file ) या गतिशील रूप से <Property name="APPENDER"> फ़िल्टरिंग सुविधा ( <Property name="APPENDER"> ) के माध्यम से सेट किया जा सकता है। फ़ाइल में लॉग दिन से पैक किया जाएगा। लॉग लाइन प्रारूप Conversion Pattern एक चर के रूप में सेट किया गया है।

<?xml version="1.0" encoding="UTF-8"?>
<!-- 'status' sets log level for parsing configuration file itself -->
<Configuration status="INFO">
<Properties>
    <!-- Sets variable PID, if it's not present in log4j context will take value as below: -->
    <Property name="PID">????</Property>
    <!-- Sets variable 'LOG_PATTERN', defining how log line will look like -->
    <Property name="LOG_PATTERN">%clr{%d{yyyy-MM-dd HH:mm:ss.SSS}}{faint} %clr{%5p} %clr{${sys:PID}}{magenta} %clr{%X{usr}}{green} %clr{---}{faint}%clr{[%15.15t]}{faint} %clr{%-40.40c{1.}:%l}{cyan} %clr{:}{faint} %m%n%wEx</Property>
    <!-- LOG_DIR may be set by maven filtering feature: -->
    <Property name="LOG_DIR">@logging.path@</Property>
    <!-- APPENDER may be set by maven filtering feature, to set 'console' or 'file' appender: -->
    <Property name="APPENDER">@logging.default.appender@</Property>
</Properties>
<Appenders>
    <!-- Sets console output: -->
    <Console name="console" target="SYSTEM_OUT">
        <PatternLayout pattern="${LOG_PATTERN}"/>
    </Console>
    <!-- Sets output to file, and names it 'file' -->
    <RollingRandomAccessFile append="true" fileName="${LOG_DIR}/log4j2.log"
        filePattern = "${LOG_DIR}/log4j2.%d{yyyy-MM-dd}.nr%i.log.gz" name="file">
        <PatternLayout>
            <Pattern>${LOG_PATTERN}</Pattern>
        </PatternLayout>
        <Policies>
            <TimeBasedTriggeringPolicy />
        </Policies>
    </RollingRandomAccessFile>
</Appenders>
<Loggers>
    <!-- Sets debug for Class 'com.example.package.Clazz', and attaches to file 'file' -->
    <Logger name="com.example.package.Clazz" level="debug">
        <AppenderRef ref="file"/>
    </Logger>
    <!-- Sets 'info' for package 'org.springframework' -->
    <Logger name="org.springframework" level="info" />
    <Root level="WARN">
        <AppenderRef ref="${APPENDER}"/>
    </Root>
</Loggers>
</Configuration>


Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow