summaryrefslogtreecommitdiffstats
path: root/src/main/resources/logback.xml
blob: 94d2151a96f50ceb2a16c4479c21adda91db22ee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
<configuration scan="true" scanPeriod="30 seconds" debug="true">
    <property name="outputFilename" value="pm-mapper_output"/>
    <property name="outputFilenameReadable" value="pm-mapper_output_readable"/>
    <property name="logPath" value="/var/log/ONAP/dcaegen2/services/pm-mapper"/>
    <property name="archivePath" value="${logPath}/archive"/>
    <property name="maxFileSize" value="50MB"/>
    <property name="maxHistory" value="30"/>
    <property name="totalSizeCap" value="10GB"/>
    <property name="p_tim" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}"/>
    <property name="p_lvl" value="%level"/>
    <property name="p_log" value="%logger"/>
    <property name="p_mdc" value="%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}"/>
    <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}"/>
    <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}"/>
    <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}"/>
    <property name="p_thr" value="%thread"/>
    <property name="pattern" value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n"/>
    <property name="patternReadable" value="%nopexception${p_tim} | ${p_lvl} | ${p_msg}%n"/>


    <variable name="logLevel" value="${LOG_LEVEL:-INFO}"/>

    <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>${pattern}</pattern>
        </encoder>
    </appender>

    <appender name="ROLLING-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${logPath}/${outputFilename}.log</file>
        <encoder>
            <pattern>${pattern}</pattern>
        </encoder>
        <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
        <FileNamePattern>${logPath}/${outputFilename}.%d{yyyy-MM-dd}.%i.log.zip</FileNamePattern>
        <MaxFileSize>${maxFileSize}</MaxFileSize>
        <MaxHistory>${maxHistory}</MaxHistory>
        <TotalSizeCap>${totalSizeCap}</TotalSizeCap>
      </rollingPolicy>
    </appender>

    <appender name="READABLE-FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${logPath}/${outputFilenameReadable}.log</file>
        <encoder>
            <pattern>${patternReadable}</pattern>
        </encoder>

        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <fileNamePattern>${logPath}/${outputFilenameReadable}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
            <minIndex>1</minIndex>
            <maxIndex>1</maxIndex>
        </rollingPolicy>

        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>${maxFileSize}</maxFileSize>
        </triggeringPolicy>
    </appender>

    <root level="${logLevel}" additivity="false">
        <appender-ref ref="CONSOLE" />
        <appender-ref ref="ROLLING-FILE" />
        <appender-ref ref="READABLE-FILE" />
    </root>

</configuration>