1 <configuration scan="true" scanPeriod="3 seconds">
2 <!--<jmxConfigurator /> -->
3 <!-- directory path for all other type logs -->
4 <property name="logDir" value="logs" />
6 <!-- directory path for debugging type logs -->
7 <property name="debugDir" value="debug-logs" />
9 <!-- specify the component name -->
10 <property name="componentName" value="SDC" />
12 <!-- log file names -->
13 <property name="generalLogName" value="application" />
14 <property name="securityLogName" value="security" />
15 <property name="performanceLogName" value="performance" />
16 <property name="serverLogName" value="server" />
17 <property name="policyLogName" value="policy" />
18 <property name="errorLogName" value="error" />
19 <property name="metricsLogName" value="metrics" />
20 <property name="auditLogName" value="audit" />
21 <property name="debugLogName" value="debug" />
23 <property name="defaultPattern" value="%date{ISO8601,UTC}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />
25 <property name="debugLoggerPattern" value="%date{ISO8601,UTC}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}|[%caller{3}]| %msg%n" />
27 <property name="logDirectory" value="${logDir}/${componentName}" />
28 <property name="debugLogDirectory" value="${debugDir}/${componentName}" />
31 <!-- Example evaluator filter applied against console appender -->
32 <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
34 <pattern>${defaultPattern}</pattern>
38 <!-- ============================================================================ -->
39 <!-- EELF Appenders -->
40 <!-- ============================================================================ -->
42 <!-- The EELFAppender is used to record events to the general application
47 class="ch.qos.logback.core.rolling.RollingFileAppender">
48 <file>${logDirectory}/${generalLogName}.log</file>
50 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
51 <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
53 <minIndex>1</minIndex>
54 <maxIndex>9</maxIndex>
57 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
58 <maxFileSize>5MB</maxFileSize>
61 <pattern>${defaultPattern}</pattern>
65 <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
66 <queueSize>256</queueSize>
67 <appender-ref ref="EELF" />
70 <!-- EELF Security Appender. This appender is used to record security events
71 to the security log file. Security events are separate from other loggers
72 in EELF so that security log records can be captured and managed in a secure
73 way separate from the other logs. This appender is set to never discard any
75 <appender name="EELFSecurity"
76 class="ch.qos.logback.core.rolling.RollingFileAppender">
77 <file>${logDirectory}/${securityLogName}.log</file>
79 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
80 <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip
82 <minIndex>1</minIndex>
83 <maxIndex>9</maxIndex>
86 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
87 <maxFileSize>5MB</maxFileSize>
90 <pattern>${defaultPattern}</pattern>
94 <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
95 <queueSize>256</queueSize>
96 <discardingThreshold>0</discardingThreshold>
97 <appender-ref ref="EELFSecurity" />
100 <!-- EELF Performance Appender. This appender is used to record performance
102 <appender name="EELFPerformance"
103 class="ch.qos.logback.core.rolling.RollingFileAppender">
104 <file>${logDirectory}/${performanceLogName}.log</file>
106 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
107 <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip
109 <minIndex>1</minIndex>
110 <maxIndex>9</maxIndex>
113 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
114 <maxFileSize>5MB</maxFileSize>
117 <outputPatternAsHeader>true</outputPatternAsHeader>
118 <pattern>${defaultPattern}</pattern>
121 <appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender">
122 <queueSize>256</queueSize>
123 <appender-ref ref="EELFPerformance" />
126 <!-- EELF Server Appender. This appender is used to record Server related
127 logging events. The Server logger and appender are specializations of the
128 EELF application root logger and appender. This can be used to segregate Server
129 events from other components, or it can be eliminated to record these events
130 as part of the application root log. -->
131 <appender name="EELFServer"
132 class="ch.qos.logback.core.rolling.RollingFileAppender">
133 <file>${logDirectory}/${serverLogName}.log</file>
135 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
136 <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip
138 <minIndex>1</minIndex>
139 <maxIndex>9</maxIndex>
142 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
143 <maxFileSize>5MB</maxFileSize>
146 <pattern>${defaultPattern}</pattern>
149 <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
150 <queueSize>256</queueSize>
151 <appender-ref ref="EELFServer" />
155 <!-- EELF Policy Appender. This appender is used to record Policy engine
156 related logging events. The Policy logger and appender are specializations
157 of the EELF application root logger and appender. This can be used to segregate
158 Policy engine events from other components, or it can be eliminated to record
159 these events as part of the application root log. -->
160 <appender name="EELFPolicy"
161 class="ch.qos.logback.core.rolling.RollingFileAppender">
162 <file>${logDirectory}/${policyLogName}.log</file>
164 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
165 <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip
167 <minIndex>1</minIndex>
168 <maxIndex>9</maxIndex>
171 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
172 <maxFileSize>5MB</maxFileSize>
175 <pattern>${defaultPattern}</pattern>
178 <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
179 <queueSize>256</queueSize>
180 <appender-ref ref="EELFPolicy" />
184 <!-- EELF Audit Appender. This appender is used to record audit engine
185 related logging events. The audit logger and appender are specializations
186 of the EELF application root logger and appender. This can be used to segregate
187 Policy engine events from other components, or it can be eliminated to record
188 these events as part of the application root log. -->
190 <appender name="EELFAudit"
191 class="ch.qos.logback.core.rolling.RollingFileAppender">
192 <file>${logDirectory}/${auditLogName}.log</file>
194 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
195 <fileNamePattern>${logDirectory}/${auditLogName}.%i.log.zip
197 <minIndex>1</minIndex>
198 <maxIndex>9</maxIndex>
201 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
202 <maxFileSize>5MB</maxFileSize>
205 <pattern>${defaultPattern}</pattern>
208 <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
209 <queueSize>256</queueSize>
210 <appender-ref ref="EELFAudit" />
213 <appender name="EELFMetrics"
214 class="ch.qos.logback.core.rolling.RollingFileAppender">
215 <file>${logDirectory}/${metricsLogName}.log</file>
217 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
218 <fileNamePattern>${logDirectory}/${metricsLogName}.%i.log.zip
220 <minIndex>1</minIndex>
221 <maxIndex>9</maxIndex>
224 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
225 <maxFileSize>5MB</maxFileSize>
228 <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
229 %msg%n"</pattern> -->
230 <pattern>${defaultPattern}</pattern>
235 <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
236 <queueSize>256</queueSize>
237 <appender-ref ref="EELFMetrics"/>
240 <appender name="EELFError"
241 class="ch.qos.logback.core.rolling.RollingFileAppender">
242 <file>${logDirectory}/${errorLogName}.log</file>
244 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
245 <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
247 <minIndex>1</minIndex>
248 <maxIndex>9</maxIndex>
251 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
252 <maxFileSize>5MB</maxFileSize>
255 <pattern>${defaultPattern}</pattern>
259 <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
260 <queueSize>256</queueSize>
261 <appender-ref ref="EELFError"/>
264 <appender name="EELFDebug"
265 class="ch.qos.logback.core.rolling.RollingFileAppender">
266 <file>${debugLogDirectory}/${debugLogName}.log</file>
268 class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
269 <fileNamePattern>${debugLogDirectory}/${debugLogName}.%i.log.zip
271 <minIndex>1</minIndex>
272 <maxIndex>9</maxIndex>
275 class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
276 <maxFileSize>5MB</maxFileSize>
279 <pattern>${debugLoggerPattern}</pattern>
283 <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
284 <queueSize>256</queueSize>
285 <appender-ref ref="EELFDebug" />
286 <includeCallerData>true</includeCallerData>
290 <!-- ============================================================================ -->
291 <!-- EELF loggers -->
292 <!-- ============================================================================ -->
293 <logger name="org.openecomp.eelf" level="info" additivity="false">
294 <appender-ref ref="asyncEELF" />
296 <logger name="org.openecomp.eelf.security" level="info" additivity="false">
297 <appender-ref ref="asyncEELFSecurity" />
299 <logger name="org.openecomp.eelf.perf" level="info" additivity="false">
300 <appender-ref ref="asyncEELFPerformance" />
302 <logger name="org.openecomp.eelf.server" level="info" additivity="false">
303 <appender-ref ref="asyncEELFServer" />
305 <logger name="org.openecomp.eelf.policy" level="info" additivity="false">
306 <appender-ref ref="asyncEELFPolicy" />
309 <logger name="org.openecomp.eelf.audit" level="info" additivity="false">
310 <appender-ref ref="asyncEELFAudit" />
313 <logger name="org.openecomp.eelf.metrics" level="info" additivity="false">
314 <appender-ref ref="asyncEELFMetrics" />
318 <logger name="org.openecomp.eelf.error" level="error" additivity="false">
319 <appender-ref ref="asyncEELFError" />
322 <logger name="org.openecomp.eelf.debug" level="debug" additivity="false">
323 <appender-ref ref="asyncEELFDebug" />
326 <appender name="DISPATCHER" class="org.openecomp.core.logging.logback.DispatchingAppender">
327 <discriminator class="org.openecomp.core.logging.logback.EventTypeDiscriminator"/>
328 <appenderNamePattern>asyncEELF%s</appenderNamePattern>
331 <root level="DEBUG" additivity="false">
332 <appender-ref ref="DISPATCHER" />