summaryrefslogtreecommitdiffstats
path: root/catalog-fe/src/main/resources/config/logback.xml
blob: 58fd1feb447cf10797819d3c65485ceec62a5bd4 (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
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="5 seconds">

    <property scope="system" name="ECOMP-component-name" value="SDC"/>
    <property scope="system" name="ECOMP-subcomponent-name" value="SDC-FE"/>
    <property file="${config.home}/catalog-fe/configuration.yaml"/>
    <property scope="context" name="enable-all-log" value="false"/>
    <property name="p_msg" value="%replace(%replace(%replace(%replace(%msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\\\|', '-'}){'\r','\\\\r'}"/>
    <property name="p_ex" value="%replace(%replace(%replace(%replace(%exception{full}){'\t','\\\\t'}){'\n', '\\\\n'}){'\\\|', '-'}){'\r','\\\\r'}"/>
    <property name="p_debugInfo" value="%replace(%replace(%replace(%replace(%thread # %level # %logger{35} # %msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\\\|', '-'}){'\r','\\\\r'}"/>

    <property name="all-log-pattern"
              value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{BeginTimestamp}|%X{EndTimestamp}|%X{uuid}|%X{serviceInstanceID}|%thread|%X{ServerName}|%X{ServiceName}|${ECOMP-subcomponent-name}|%X{userId}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceID}|%level|%X{alarmSeverity}|%X{localAddr}|%X{ElapsedTime}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;${p_msg}&gt;%n"/>

    <property name="debug-log-pattern"
              value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|${p_debugInfo} ${p_ex}|^\n%n%nopex"/>

    <property name="error-log-pattern"
              value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{ErrorCategory}|%X{ErrorCode}|${p_msg} ${p_ex}|%n%nopex"/>


    <!-- All log -->
    <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
        <then>
            <appender name="ALL_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
                <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log</file>

                <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
                    <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i
                    </fileNamePattern>
                    <minIndex>1</minIndex>
                    <maxIndex>10</maxIndex>
                </rollingPolicy>

                <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
                    <maxFileSize>20MB</maxFileSize>
                </triggeringPolicy>

                <encoder>
                    <pattern>${all-log-pattern}</pattern>
                </encoder>
            </appender>
        </then>
    </if>


    <!-- Debug log -->
    <appender name="DEBUG_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log</file>

        <!-- accept INFO, DEBUG and TRACE level -->
        <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
            <evaluator> <!-- defaults to type ch.qos.logback.classic.boolex.JaninoEventEvaluator -->
                <expression>return level &lt;= INFO;</expression>
            </evaluator>
            <OnMismatch>DENY</OnMismatch>
            <OnMatch>ACCEPT</OnMatch>
        </filter>

        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i
            </fileNamePattern>
            <minIndex>1</minIndex>
            <maxIndex>10</maxIndex>
        </rollingPolicy>

        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>20MB</maxFileSize>
        </triggeringPolicy>

        <encoder>
            <pattern>${debug-log-pattern}</pattern>
        </encoder>
    </appender>


    <!-- Error log -->
    <appender name="ERROR_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log</file>

        <!-- deny all events with a level below WARN, that is INFO TRACE and DEBUG -->
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>WARN</level>
        </filter>

        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log.%i
            </fileNamePattern>
            <minIndex>1</minIndex>
            <maxIndex>10</maxIndex>
        </rollingPolicy>

        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <maxFileSize>20MB</maxFileSize>
        </triggeringPolicy>

        <encoder>
            <pattern>${error-log-pattern}</pattern>
        </encoder>
    </appender>


    <!-- Asynchronicity Configurations -->
    <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
        <appender-ref ref="ALL_ROLLING"/>
    </appender>

    <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
        <appender-ref ref="DEBUG_ROLLING"/>
    </appender>

    <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
        <appender-ref ref="ERROR_ROLLING"/>
    </appender>


    <root level="INFO">
        <appender-ref ref="ASYNC_ERROR"/>
        <appender-ref ref="ASYNC_DEBUG"/>
        <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
            <then>
                <appender-ref ref="ASYNC_ALL"/>
            </then>
        </if>
    </root>

    <logger name="org.openecomp.sdc" level="INFO"/>
</configuration>