1 <?xml version="1.0" encoding="UTF-8"?>
2 <configuration scan="true" scanPeriod="5 seconds">
4 <property scope="system" name="ECOMP-component-name" value="SDC"/>
5 <property scope="system" name="ECOMP-subcomponent-name" value="SDC-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" 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'}"/>
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=<%M>, Desc=<${p_msg}>%n"/>
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"/>
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"/>
21 <property name="audit-log-pattern"
22 value="%X{EntryTimestamp}|%X{LogTimestamp}|%X{RequestID}|%X{ServiceInstanceID}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%logger{35}|%X{Unused}|%X{ProcessKey}|%marker|InvocationID=%X{InvocationID}|%X{CustomField3}|%X{CustomField4}|ActivityType=<%M>, Desc=<${p_msg}>%n"/>
24 <property name="metric-log-pattern"
25 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{InstanceID}|%.-5level|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|||%X{ClassName}|%X{Unused}|%X{ProcessKey}|%marker|InvocationID=%X{OutgoingInvocationId}|%X{CustomField3}|%X{CustomField4}|ActivityType=<%M>, Desc=<%msg>%n" />
27 <property name="supportability-log-pattern"
28 value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{SupportablityComponentName}|%X{SupportablityAction}|%thread|%X{SupportablityComponentUUID}|%X{SupportablityStatus}|ActivityType=<%M>, Desc=<${p_msg}>%n"/>
32 <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
34 <appender name="ALL_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
35 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log</file>
37 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
38 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i
40 <minIndex>1</minIndex>
41 <maxIndex>10</maxIndex>
44 <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
45 <maxFileSize>20MB</maxFileSize>
49 <pattern>${all-log-pattern}</pattern>
57 <appender name="DEBUG_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
58 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log</file>
60 <!-- Audit and Metric messages filter - deny audit and metric messages -->
61 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
62 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
63 <marker>ENTRY</marker>
65 <marker>INVOKE</marker>
66 <marker>INVOKE-RETURN</marker>
67 <marker>INVOKE-SYNCHRONOUS</marker>
69 <onMismatch>NEUTRAL</onMismatch>
70 <onMatch>DENY</onMatch>
73 <!-- accept INFO, DEBUG and TRACE level -->
74 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
75 <evaluator> <!-- defaults to type ch.qos.logback.classic.boolex.JaninoEventEvaluator -->
76 <expression>return level <= INFO;</expression>
78 <OnMismatch>DENY</OnMismatch>
79 <OnMatch>ACCEPT</OnMatch>
82 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
83 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i
85 <minIndex>1</minIndex>
86 <maxIndex>10</maxIndex>
89 <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
90 <maxFileSize>20MB</maxFileSize>
94 <pattern>${debug-log-pattern}</pattern>
100 <appender name="ERROR_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
101 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log</file>
103 <!-- deny all events with a level below WARN, that is INFO TRACE and DEBUG -->
104 <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
108 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
109 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log.%i
111 <minIndex>1</minIndex>
112 <maxIndex>10</maxIndex>
115 <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
116 <maxFileSize>20MB</maxFileSize>
120 <pattern>${error-log-pattern}</pattern>
126 <appender name="AUDIT_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
127 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log</file>
129 <!-- Audit messages filter - accept audit messages -->
130 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
131 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
132 <marker>ENTRY</marker>
133 <marker>EXIT</marker>
135 <onMismatch>DENY</onMismatch>
136 <onMatch>ACCEPT</onMatch>
139 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
140 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log.%i
142 <minIndex>1</minIndex>
143 <maxIndex>10</maxIndex>
146 <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
147 <maxFileSize>20MB</maxFileSize>
151 <pattern>${audit-log-pattern}</pattern>
157 <appender name="METRICS_ROLLING"
158 class="ch.qos.logback.core.rolling.RollingFileAppender">
160 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log
163 <!-- Metric messages filter - accept metric messages -->
164 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
165 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
166 <marker>INVOKE</marker>
167 <marker>INVOKE-RETURN</marker>
168 <marker>INVOKE-SYNCHRONOUS</marker>
170 <onMismatch>DENY</onMismatch>
171 <onMatch>ACCEPT</onMatch>
174 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
175 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log.%i
177 <minIndex>1</minIndex>
178 <maxIndex>10</maxIndex>
181 <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
182 <maxFileSize>20MB</maxFileSize>
186 <pattern>${metric-log-pattern}</pattern>
191 <!-- Supportability log -->
192 <appender name="SUPPORTABILITY_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
194 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/supportability.log</file>
196 <!-- Supportability messages filter - accept supportability messages -->
197 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
198 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
199 <marker>SUPPORTABILITY_MARKER</marker>
201 <onMismatch>DENY</onMismatch>
202 <onMatch>ACCEPT</onMatch>
205 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
206 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/supportability.log.%i
208 <minIndex>1</minIndex>
209 <maxIndex>10</maxIndex>
213 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
214 <maxFileSize>20MB</maxFileSize>
218 <pattern>${supportability-log-pattern}</pattern>
223 <!-- Asynchronicity Configurations -->
224 <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
225 <appender-ref ref="DEBUG_ROLLING"/>
228 <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
229 <appender-ref ref="ERROR_ROLLING"/>
232 <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
233 <appender-ref ref="ALL_ROLLING"/>
238 <appender-ref ref="ASYNC_DEBUG"/>
239 <appender-ref ref="ASYNC_ERROR"/>
240 <appender-ref ref="AUDIT_ROLLING"/>
241 <appender-ref ref="METRICS_ROLLING"/>
242 <appender-ref ref="SUPPORTABILITY_ROLLING"/>
243 <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
245 <appender-ref ref="ASYNC_ALL"/>
250 <logger name="org.openecomp.sdc" level="INFO"/>