Catalog alignment
[sdc.git] / catalog-fe / src / main / resources / config / logback.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <configuration scan="true" scanPeriod="5 seconds">
3
4     <property scope="system" name="ECOMP-component-name" value="SDC"/>
5     <property scope="system" name="ECOMP-subcomponent-name" value="SDC-FE"/>
6     <property file="${config.home}/catalog-fe/configuration.yaml"/>
7     <property scope="context" name="enable-all-log" value="false"/>
8     <property name="p_msg" value="%replace(%replace(%replace(%replace(%msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\\\|', '-'}){'\r','\\\\r'}"/>
9     <property name="p_ex" value="%replace(%replace(%replace(%replace(%exception{full}){'\t','\\\\t'}){'\n', '\\\\n'}){'\\\|', '-'}){'\r','\\\\r'}"/>
10     <property name="p_debugInfo" value="%replace(%replace(%replace(%replace(%thread # %level # %logger{35} # %msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\\\|', '-'}){'\r','\\\\r'}"/>
11
12     <property name="all-log-pattern"
13               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"/>
14
15     <property name="debug-log-pattern"
16               value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|${p_debugInfo} ${p_ex}|^\n%n%nopex"/>
17
18     <property name="error-log-pattern"
19               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"/>
20
21
22     <!-- All log -->
23     <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
24         <then>
25             <appender name="ALL_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
26                 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log</file>
27
28                 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
29                     <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i
30                     </fileNamePattern>
31                     <minIndex>1</minIndex>
32                     <maxIndex>10</maxIndex>
33                 </rollingPolicy>
34
35                 <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
36                     <maxFileSize>20MB</maxFileSize>
37                 </triggeringPolicy>
38
39                 <encoder>
40                     <pattern>${all-log-pattern}</pattern>
41                 </encoder>
42             </appender>
43         </then>
44     </if>
45
46
47     <!-- Debug log -->
48     <appender name="DEBUG_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
49         <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log</file>
50
51         <!-- accept INFO, DEBUG and TRACE level -->
52         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
53             <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
54                 <expression>
55                     e.level.toInt() &lt;= INFO.toInt()
56                 </expression>
57             </evaluator>
58             <OnMismatch>DENY</OnMismatch>
59             <OnMatch>ACCEPT</OnMatch>
60         </filter>
61
62         <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
63             <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i
64             </fileNamePattern>
65             <minIndex>1</minIndex>
66             <maxIndex>10</maxIndex>
67         </rollingPolicy>
68
69         <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
70             <maxFileSize>20MB</maxFileSize>
71         </triggeringPolicy>
72
73         <encoder>
74             <pattern>${debug-log-pattern}</pattern>
75         </encoder>
76     </appender>
77
78
79     <!-- Error log -->
80     <appender name="ERROR_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
81         <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log</file>
82
83         <!-- deny all events with a level below WARN, that is INFO TRACE and DEBUG -->
84         <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
85             <level>WARN</level>
86         </filter>
87
88         <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
89             <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log.%i
90             </fileNamePattern>
91             <minIndex>1</minIndex>
92             <maxIndex>10</maxIndex>
93         </rollingPolicy>
94
95         <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
96             <maxFileSize>20MB</maxFileSize>
97         </triggeringPolicy>
98
99         <encoder>
100             <pattern>${error-log-pattern}</pattern>
101         </encoder>
102     </appender>
103
104
105     <!-- Asynchronicity Configurations -->
106     <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
107         <appender-ref ref="ALL_ROLLING"/>
108     </appender>
109
110     <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
111         <appender-ref ref="DEBUG_ROLLING"/>
112     </appender>
113
114     <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
115         <appender-ref ref="ERROR_ROLLING"/>
116     </appender>
117
118
119     <root level="INFO">
120         <appender-ref ref="ASYNC_ERROR"/>
121         <appender-ref ref="ASYNC_DEBUG"/>
122         <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
123             <then>
124                 <appender-ref ref="ASYNC_ALL"/>
125             </then>
126         </if>
127     </root>
128
129     <logger name="org.openecomp.sdc" level="INFO"/>
130 </configuration>