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" />
9 <!-- value used by pattern field list (| - is inter-field separator, || - unavailable or not applicable field value) (m - mandatory, o- optional)-->
10 <!--timestamp(m)| requestID(m)| serviceInstanceID(o)| threadID(m)| physicalServerName(o)| serviceName(m)| userID(m)| logLevel(m)| severity(o)| serverIpAddress(m)| serverName(m)| clientIpAddress(o)| className(m)| timer(o)| detailedMessage(o)-->
11 <property name="default-log-pattern"
12 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{InstanceUUID}|%level|%X{alarmSeverity}|%X{localAddr}|%X{ElapsedTime}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=<%M>, Desc=<%msg>%n" />
14 <property name="error-log-pattern"
15 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}|%msg|%n" />
17 <property name="audit-log-pattern" value="%X{AuditBeginTimestamp}|%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{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|ActivityType=<%M>, Desc=<%msg>%n" />
19 <property name="metric-log-pattern" value="%X{MetricBeginTimestamp}|%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{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|ActivityType=<%M>, Desc=<%msg>%n" />
21 <property name="debug-log-pattern" value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%msg|^\n%n"/>
24 <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
26 <appender name="ALL_ROLLING"
27 class="ch.qos.logback.core.rolling.RollingFileAppender">
28 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log
32 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
33 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i
35 <minIndex>1</minIndex>
36 <maxIndex>10</maxIndex>
40 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
41 <maxFileSize>20MB</maxFileSize>
44 <pattern>${default-log-pattern}</pattern>
48 <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
49 <appender-ref ref="ALL_ROLLING" />
55 <appender name="ERROR_ROLLING"
56 class="ch.qos.logback.core.rolling.RollingFileAppender">
57 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log
60 <!-- Audit messages filter - deny audit messages -->
61 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
62 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
63 <marker>AUDIT_MARKER</marker>
65 <onMismatch>NEUTRAL</onMismatch>
66 <onMatch>DENY</onMatch>
69 <!-- Transaction messages filter - deny Transaction messages -->
70 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
71 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
72 <marker>TRANSACTION_MARKER</marker>
74 <onMismatch>NEUTRAL</onMismatch>
75 <onMatch>DENY</onMatch>
78 <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
79 <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
83 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
84 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log.%i
86 <minIndex>1</minIndex>
87 <maxIndex>10</maxIndex>
91 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
92 <maxFileSize>20MB</maxFileSize>
95 <pattern>${error-log-pattern}</pattern>
100 <appender name="DEBUG_ROLLING"
101 class="ch.qos.logback.core.rolling.RollingFileAppender">
102 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log
105 <!-- No need to deny audit messages - they are INFO only, will be denied
107 <!-- Transaction messages filter - deny Transaction messages, there are
108 some DEBUG level messages among them -->
109 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
110 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
111 <marker>TRANSACTION_MARKER</marker>
113 <onMismatch>NEUTRAL</onMismatch>
114 <onMatch>DENY</onMatch>
117 <!-- accept DEBUG and TRACE level -->
118 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
119 <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
121 e.level.toInt() <= DEBUG.toInt()
124 <OnMismatch>DENY</OnMismatch>
125 <!--<OnMatch>NEUTRAL</OnMatch>-->
126 <OnMatch>ACCEPT</OnMatch>
129 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
130 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i
132 <minIndex>1</minIndex>
133 <maxIndex>10</maxIndex>
137 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
138 <maxFileSize>20MB</maxFileSize>
141 <pattern>${debug-log-pattern}</pattern>
146 <!-- ASDC debug by package-->
147 <appender name="PACKAGE_DEBUG_ROLLING"
148 class="ch.qos.logback.core.rolling.RollingFileAppender">
149 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug_by_package.log
152 <!-- No need to deny audit messages - they are INFO only, will be denied
154 <!-- Transaction messages filter - deny Transaction messages, there are
155 some DEBUG level messages among them -->
156 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
157 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
158 <marker>TRANSACTION_MARKER</marker>
160 <onMismatch>NEUTRAL</onMismatch>
161 <onMatch>DENY</onMatch>
164 <!-- accept DEBUG and TRACE level -->
165 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
166 <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
168 e.level.toInt() <= DEBUG.toInt()
171 <OnMismatch>DENY</OnMismatch>
172 <OnMatch>NEUTRAL</OnMatch>
175 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
176 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug_by_package.log.%i
178 <minIndex>1</minIndex>
179 <maxIndex>10</maxIndex>
183 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
184 <maxFileSize>20MB</maxFileSize>
187 <pattern>${debug-log-pattern}</pattern>
192 <appender name="AUDIT_ROLLING"
193 class="ch.qos.logback.core.rolling.RollingFileAppender">
195 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log
198 <!-- Audit messages filter - accept audit messages -->
199 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
200 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
201 <marker>AUDIT_MARKER</marker>
202 <marker>AUDIT</marker>
204 <onMismatch>DENY</onMismatch>
205 <onMatch>ACCEPT</onMatch>
208 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
209 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log.%i
211 <minIndex>1</minIndex>
212 <maxIndex>10</maxIndex>
216 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
217 <maxFileSize>20MB</maxFileSize>
220 <pattern>${audit-log-pattern}</pattern>
225 <appender name="METRICS_ROLLING"
226 class="ch.qos.logback.core.rolling.RollingFileAppender">
228 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log
231 <!-- Metric messages filter - accept metric messages -->
232 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
233 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
234 <marker>METRICS</marker>
236 <onMismatch>DENY</onMismatch>
237 <onMatch>ACCEPT</onMatch>
240 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
241 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log.%i
243 <minIndex>1</minIndex>
244 <maxIndex>10</maxIndex>
248 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
249 <maxFileSize>20MB</maxFileSize>
252 <pattern>${metric-log-pattern}</pattern>
256 <!-- SdncTransaction log -->
257 <appender name="TRANSACTION_ROLLING"
258 class="ch.qos.logback.core.rolling.RollingFileAppender">
260 <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/transaction.log
263 <!-- Transaction messages filter - accept audit messages -->
264 <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
265 <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
266 <marker>TRANSACTION_MARKER</marker>
268 <onMismatch>DENY</onMismatch>
269 <onMatch>ACCEPT</onMatch>
272 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
273 <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/transaction.log.%i
275 <minIndex>1</minIndex>
276 <maxIndex>10</maxIndex>
280 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
281 <maxFileSize>20MB</maxFileSize>
284 <pattern>${default-log-pattern}</pattern>
288 <!-- Asynchronicity Configurations -->
289 <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
290 <appender-ref ref="DEBUG_ROLLING" />
293 <appender name="ASYNC_TRANSACTION" class="ch.qos.logback.classic.AsyncAppender">
294 <appender-ref ref="TRANSACTION_ROLLING" />
297 <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
298 <appender-ref ref="ERROR_ROLLING" />
302 <appender-ref ref="ASYNC_ERROR" />
303 <appender-ref ref="ASYNC_DEBUG" />
304 <appender-ref ref="AUDIT_ROLLING" />
305 <appender-ref ref="ASYNC_TRANSACTION" />
306 <appender-ref ref="METRICS_ROLLING" />
307 <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
309 <appender-ref ref="ALL_ROLLING" />
314 <logger name="org.openecomp.sdc" level="INFO" />