Fix SDC-ONBOARDING-BE not logging to STDOUT
[sdc.git] / openecomp-be / dist / sdc-onboard-backend-docker / artifacts / chef-repo / cookbooks / sdc-onboard-backend / files / default / 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="ONBOARD-BE"/>
6     <property file="${config.home}/catalog-be/configuration.yaml"/>
7     <property scope="context" name="enable-all-log" value="false"/>
8     <property name="p_msg"
9         value="%replace(%replace(%replace(%replace(%msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\r','\\\\r'}){'\\\|','-'}"/>
10     <property name="p_ex"
11         value="%replace(%replace(%replace(%replace(%exception{full}){'\t','\\\\t'}){'\n', '\\\\n'}){'\r','\\\\r'}){'\\\|','-'}"/>
12     <property name="p_debugInfo"
13         value="%replace(%replace(%replace(%replace(%thread # %level # %logger{35} # %msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\r','\\\\r'}){'\\\|','-'}"/>
14
15     <property name="all-log-pattern"
16         value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{EndTimestamp}|%X{RequestID}|%X{ServiceInstanceId}|%thread|%X{ServerName}|%X{ServiceName}|${ECOMP-subcomponent-name}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%level|%X{AlertSeverity}|%X{ServerIpAddress}|%X{ElapsedTime}|${ServerFQDN}|%X{ClientIPAddress}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;${p_msg}&gt;%n"/>
17
18     <property name="debug-log-pattern"
19         value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|${p_debugInfo} ${p_ex}|^\n %n%nopex"/>
20
21     <property name="error-log-pattern"
22         value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|500|${p_msg} ${p_ex}|%n%nopex"/>
23
24     <property name="audit-log-pattern"
25         value="%X{EntryTimestamp}|%X{EndTimestamp}|%X{RequestID}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIpAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%marker|InvocationID=%X{InvocationID}|%X{CustomField3}|%X{CustomField4}|ActivityType=&lt;%M&gt;, Desc=&lt;${p_msg}&gt;%n"/>
26
27     <property name="metric-log-pattern"
28         value="%X{InvokeTimestamp}|%X{EndTimestamp}|%X{RequestID}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIpAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{ClientIPAddress }|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVirtualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|ActivityType=&lt;%M&gt;, Desc=&lt;${p_msg}&gt;%n"/>
29
30     <!-- All log -->
31     <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
32         <then>
33             <appender name="ALL_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
34                 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log</file>
35
36                 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
37                     <fileNamePattern>
38                         ${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i
39                     </fileNamePattern>
40                     <minIndex>1</minIndex>
41                     <maxIndex>10</maxIndex>
42                 </rollingPolicy>
43
44                 <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
45                     <maxFileSize>20MB</maxFileSize>
46                 </triggeringPolicy>
47
48                 <encoder>
49                     <pattern>${all-log-pattern}</pattern>
50                 </encoder>
51             </appender>
52         </then>
53     </if>
54
55     <!-- Debug log -->
56     <appender name="DEBUG_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
57         <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log</file>
58
59         <!-- Audit and Metric messages filter - deny audit and metric messages -->
60         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
61             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
62                 <marker>AUDIT</marker>
63                 <marker>METRICS</marker>
64             </evaluator>
65             <onMismatch>NEUTRAL</onMismatch>
66             <onMatch>DENY</onMatch>
67         </filter>
68
69         <!-- accept INFO, DEBUG and TRACE level -->
70         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
71             <evaluator> <!-- defaults to type ch.qos.logback.classic.boolex.JaninoEventEvaluator -->
72                 <expression>return level &lt;= INFO;</expression>
73             </evaluator>
74             <OnMismatch>DENY</OnMismatch>
75             <OnMatch>ACCEPT</OnMatch>
76         </filter>
77
78         <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
79             <fileNamePattern>
80                 ${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i
81             </fileNamePattern>
82             <minIndex>1</minIndex>
83             <maxIndex>10</maxIndex>
84         </rollingPolicy>
85
86         <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
87             <maxFileSize>20MB</maxFileSize>
88         </triggeringPolicy>
89
90         <encoder>
91             <pattern>${debug-log-pattern}</pattern>
92         </encoder>
93     </appender>
94
95     <!-- Error log -->
96     <appender name="ERROR_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
97         <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log</file>
98
99         <!-- deny all events with a level below WARN, that is INFO TRACE and DEBUG -->
100         <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
101             <level>WARN</level>
102         </filter>
103
104         <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
105             <fileNamePattern>
106                 ${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log.%i
107             </fileNamePattern>
108             <minIndex>1</minIndex>
109             <maxIndex>10</maxIndex>
110         </rollingPolicy>
111
112         <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
113             <maxFileSize>20MB</maxFileSize>
114         </triggeringPolicy>
115
116         <encoder>
117             <pattern>${error-log-pattern}</pattern>
118         </encoder>
119     </appender>
120
121     <!-- Audit log -->
122     <appender name="AUDIT_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
123         <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log</file>
124
125         <!-- Audit messages filter - accept audit messages -->
126         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
127             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
128                 <marker>ENTRY</marker>
129                 <marker>EXIT</marker>
130             </evaluator>
131             <onMismatch>DENY</onMismatch>
132             <onMatch>ACCEPT</onMatch>
133         </filter>
134
135         <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
136             <fileNamePattern>
137                 ${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log.%i
138             </fileNamePattern>
139             <minIndex>1</minIndex>
140             <maxIndex>10</maxIndex>
141         </rollingPolicy>
142
143         <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
144             <maxFileSize>20MB</maxFileSize>
145         </triggeringPolicy>
146
147         <encoder>
148             <pattern>${audit-log-pattern}</pattern>
149         </encoder>
150     </appender>
151
152     <!-- Metrics log -->
153     <appender name="METRICS_ROLLING"
154         class="ch.qos.logback.core.rolling.RollingFileAppender">
155
156         <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log
157         </file>
158
159         <!-- Metric messages filter - accept metric messages -->
160         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
161             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
162                 <marker>METRICS</marker>
163             </evaluator>
164             <onMismatch>DENY</onMismatch>
165             <onMatch>ACCEPT</onMatch>
166         </filter>
167
168         <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
169             <fileNamePattern>
170                 ${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log.%i
171             </fileNamePattern>
172             <minIndex>1</minIndex>
173             <maxIndex>10</maxIndex>
174         </rollingPolicy>
175
176         <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
177             <maxFileSize>20MB</maxFileSize>
178         </triggeringPolicy>
179
180         <encoder>
181             <pattern>${metric-log-pattern}</pattern>
182         </encoder>
183     </appender>
184
185     <!-- Asynchronicity Configurations -->
186     <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
187         <appender-ref ref="DEBUG_ROLLING"/>
188     </appender>
189
190     <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
191         <appender-ref ref="ERROR_ROLLING"/>
192     </appender>
193
194     <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
195         <appender-ref ref="ALL_ROLLING"/>
196     </appender>
197
198     <appender name="DEBUG_STDOUT" class="ch.qos.logback.core.ConsoleAppender">
199         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
200             <evaluator> <!-- defaults to type ch.qos.logback.classic.boolex.JaninoEventEvaluator -->
201                 <expression>return level &lt;= INFO;</expression>
202             </evaluator>
203             <OnMismatch>DENY</OnMismatch>
204             <OnMatch>ACCEPT</OnMatch>
205         </filter>
206
207         <encoder>
208             <pattern>${debug-log-pattern}</pattern>
209         </encoder>
210     </appender>
211
212     <appender name="ERROR_STDOUT" class="ch.qos.logback.core.ConsoleAppender">
213         <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
214             <level>WARN</level>
215         </filter>
216
217         <encoder>
218             <pattern>${error-log-pattern}</pattern>
219         </encoder>
220     </appender>
221
222     <root level="INFO">
223         <appender-ref ref="ASYNC_ERROR"/>
224         <appender-ref ref="ASYNC_DEBUG"/>
225         <appender-ref ref="AUDIT_ROLLING"/>
226         <appender-ref ref="METRICS_ROLLING"/>
227         <appender-ref ref="DEBUG_STDOUT"/>
228         <appender-ref ref="ERROR_STDOUT"/>
229         <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
230             <then>
231                 <appender-ref ref="ASYNC_ALL"/>
232             </then>
233         </if>
234     </root>
235
236     <logger name="org.openecomp.sdc" level="INFO"/>
237     <logger name="org.openecomp.sdcrests" level="INFO"/>
238 </configuration>