Add docker files
[sdc/dcae-d/dt-be-main.git] / docker / docker_be / chef-solo / cookbooks / Deploy-DCAE / files / default / logback-spring.xml
1 <!-- Copyright (c) 2016 AT&T Intellectual Property. All rights reserved. -->
2 <configuration scan="true" scanPeriod="3 seconds">
3   <include resource="org/springframework/boot/logging/logback/base.xml"/>
4   <!--<jmxConfigurator /> -->
5   
6   <!--  specify the component name -->
7   <property name="componentName" value="DCAE"></property>
8   
9   <!--  log file names -->
10   <property name="generalLogName" value="application" />
11   <property name="securityLogName" value="security" />
12   <property name="performanceLogName" value="performance" />
13   <property name="serverLogName" value="server" />
14   <property name="policyLogName" value="policy" />
15   <property name="errorLogName" value="error" />
16   <property name="metricsLogName" value="metrics" />
17   <property name="auditLogName" value="audit" />
18   <property name="debugLogName" value="debug" />
19   
20   <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" />
21   
22   <property name="auditLoggerPattern" value="%X{BeginTimestamp}|%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}| %msg%n" />
23   <property name="metricsLoggerPattern" value="%X{BeginTimestamp}|%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{TargetVirtualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" />
24   <property name="errorLoggerPattern" value="%date{ISO8601,UTC}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDescription}| %msg%n" />
25   <property name="debugLoggerPattern" value="%date{ISO8601,UTC}|%X{RequestId}| %msg%n" />
26    
27   <property name="logDirectory" value="${log.home}/${componentName}" />
28   
29   
30   <!-- Example evaluator filter applied against console appender -->
31   <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
32     <encoder>
33       <pattern>${defaultPattern}</pattern>
34     </encoder>
35   </appender>
36
37   <!-- ============================================================================ -->
38   <!-- EELF Appenders -->
39   <!-- ============================================================================ -->
40
41   <!-- The EELFAppender is used to record events to the general application 
42     log -->
43     
44     
45   <appender name="EELF"
46     class="ch.qos.logback.core.rolling.RollingFileAppender">
47     <file>${logDirectory}/${generalLogName}.log</file>
48     <rollingPolicy
49       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
50       <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
51       </fileNamePattern>
52       <minIndex>1</minIndex>
53       <maxIndex>9</maxIndex>
54     </rollingPolicy>
55     <triggeringPolicy
56       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
57       <maxFileSize>5MB</maxFileSize>
58     </triggeringPolicy>
59     <encoder>
60       <pattern>${defaultPattern}</pattern>
61     </encoder>
62   </appender>
63   
64   <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
65     <queueSize>256</queueSize>
66     <appender-ref ref="EELF" />
67   </appender>
68
69   <!-- EELF Security Appender. This appender is used to record security events 
70     to the security log file. Security events are separate from other loggers 
71     in EELF so that security log records can be captured and managed in a secure 
72     way separate from the other logs. This appender is set to never discard any 
73     events. -->
74   <appender name="EELFSecurity"
75     class="ch.qos.logback.core.rolling.RollingFileAppender">
76     <file>${logDirectory}/${securityLogName}.log</file>
77     <rollingPolicy
78       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
79       <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip
80       </fileNamePattern>
81       <minIndex>1</minIndex>
82       <maxIndex>9</maxIndex>
83     </rollingPolicy>
84     <triggeringPolicy
85       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
86       <maxFileSize>5MB</maxFileSize>
87     </triggeringPolicy>
88     <encoder>
89       <pattern>${defaultPattern}</pattern>
90     </encoder>
91   </appender>
92   
93   <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
94     <queueSize>256</queueSize>
95     <discardingThreshold>0</discardingThreshold>
96     <appender-ref ref="EELFSecurity" />
97   </appender>
98
99   <!-- EELF Performance Appender. This appender is used to record performance 
100     records. -->
101   <appender name="EELFPerformance"
102     class="ch.qos.logback.core.rolling.RollingFileAppender">
103     <file>${logDirectory}/${performanceLogName}.log</file>
104     <rollingPolicy
105       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
106       <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip
107       </fileNamePattern>
108       <minIndex>1</minIndex>
109       <maxIndex>9</maxIndex>
110     </rollingPolicy>
111     <triggeringPolicy
112       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
113       <maxFileSize>5MB</maxFileSize>
114     </triggeringPolicy>
115     <encoder>
116       <pattern>${defaultPattern}</pattern>
117     </encoder>
118   </appender>
119   <appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender">
120     <queueSize>256</queueSize>
121     <appender-ref ref="EELFPerformance" />
122   </appender>
123
124   <!-- EELF Server Appender. This appender is used to record Server related 
125     logging events. The Server logger and appender are specializations of the 
126     EELF application root logger and appender. This can be used to segregate Server 
127     events from other components, or it can be eliminated to record these events 
128     as part of the application root log. -->
129   <appender name="EELFServer"
130     class="ch.qos.logback.core.rolling.RollingFileAppender">
131     <file>${logDirectory}/${serverLogName}.log</file>
132     <rollingPolicy
133       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
134       <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip
135       </fileNamePattern>
136       <minIndex>1</minIndex>
137       <maxIndex>9</maxIndex>
138     </rollingPolicy>
139     <triggeringPolicy
140       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
141       <maxFileSize>5MB</maxFileSize>
142     </triggeringPolicy>
143     <encoder>
144         <pattern>${defaultPattern}</pattern>
145     </encoder>
146   </appender>
147   <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
148     <queueSize>256</queueSize>
149     <appender-ref ref="EELFServer" />
150   </appender>
151
152   
153   <!-- EELF Policy Appender. This appender is used to record Policy engine 
154     related logging events. The Policy logger and appender are specializations 
155     of the EELF application root logger and appender. This can be used to segregate 
156     Policy engine events from other components, or it can be eliminated to record 
157     these events as part of the application root log. -->
158   <appender name="EELFPolicy"
159     class="ch.qos.logback.core.rolling.RollingFileAppender">
160     <file>${logDirectory}/${policyLogName}.log</file>
161     <rollingPolicy
162       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
163       <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip
164       </fileNamePattern>
165       <minIndex>1</minIndex>
166       <maxIndex>9</maxIndex>
167     </rollingPolicy>
168     <triggeringPolicy
169       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
170       <maxFileSize>5MB</maxFileSize>
171     </triggeringPolicy>
172     <encoder>
173         <pattern>${defaultPattern}</pattern>
174     </encoder>
175   </appender>
176   <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
177     <queueSize>256</queueSize>
178     <appender-ref ref="EELFPolicy" />
179   </appender>
180   
181   
182   <!-- EELF Audit Appender. This appender is used to record audit engine 
183     related logging events. The audit logger and appender are specializations 
184     of the EELF application root logger and appender. This can be used to segregate 
185     Policy engine events from other components, or it can be eliminated to record 
186     these events as part of the application root log. -->
187     
188   <!-- Audit log -->
189         <appender name="EELFAudit"
190            class="ch.qos.logback.core.rolling.RollingFileAppender">
191            <file>${logDirectory}/${auditLogName}.log</file>
192            <!-- Audit messages filter - accept audit messages -->
193            <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
194               <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
195                  <marker>AUDIT_MARKER</marker>
196                  <marker>AUDIT</marker>
197               </evaluator>
198               <onMismatch>DENY</onMismatch>
199               <onMatch>ACCEPT</onMatch>
200            </filter>
201         
202            <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
203               <fileNamePattern>${logDirectory}/${auditLogName}.%i.log.zip</fileNamePattern>
204               <minIndex>1</minIndex>
205               <maxIndex>10</maxIndex>
206            </rollingPolicy>
207         
208            <triggeringPolicy
209               class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
210               <maxFileSize>20MB</maxFileSize>
211            </triggeringPolicy>
212            <encoder>
213               <pattern>${auditLoggerPattern}</pattern>
214            </encoder>
215         </appender>
216   
217   <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
218     <queueSize>256</queueSize>
219     <appender-ref ref="EELFAudit" />
220   </appender>
221
222 <appender name="EELFMetrics"
223     class="ch.qos.logback.core.rolling.RollingFileAppender">
224     <file>${logDirectory}/${metricsLogName}.log</file>
225     <rollingPolicy
226       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
227       <fileNamePattern>${logDirectory}/${metricsLogName}.%i.log.zip
228       </fileNamePattern>
229       <minIndex>1</minIndex>
230       <maxIndex>9</maxIndex>
231     </rollingPolicy>
232     <triggeringPolicy
233       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
234       <maxFileSize>5MB</maxFileSize>
235     </triggeringPolicy>
236     <encoder>
237       <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - 
238         %msg%n"</pattern> -->
239       <pattern>${metricsLoggerPattern}</pattern>
240     </encoder>
241   </appender>
242   
243   
244   <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
245     <queueSize>256</queueSize>
246     <appender-ref ref="EELFMetrics"/>
247   </appender>
248    
249   <appender name="EELFError"
250     class="ch.qos.logback.core.rolling.RollingFileAppender">
251     <file>${logDirectory}/${errorLogName}.log</file>
252     <rollingPolicy
253       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
254       <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
255       </fileNamePattern>
256       <minIndex>1</minIndex>
257       <maxIndex>9</maxIndex>
258     </rollingPolicy>
259     <triggeringPolicy
260       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
261       <maxFileSize>5MB</maxFileSize>
262     </triggeringPolicy>
263     <encoder>
264       <pattern>${errorLoggerPattern}</pattern>
265     </encoder>
266   </appender>
267   
268   <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
269     <queueSize>256</queueSize>
270     <appender-ref ref="EELFError"/>
271   </appender>
272   
273    <appender name="EELFDebug"
274     class="ch.qos.logback.core.rolling.RollingFileAppender">
275     <file>${logDirectory}/${debugLogName}.log</file>
276     <rollingPolicy
277       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
278       <fileNamePattern>${logDirectory}/${debugLogName}.%i.log.zip
279       </fileNamePattern>
280       <minIndex>1</minIndex>
281       <maxIndex>9</maxIndex>
282     </rollingPolicy>
283     <triggeringPolicy
284       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
285       <maxFileSize>5MB</maxFileSize>
286     </triggeringPolicy>
287     <encoder>
288       <pattern>${debugLoggerPattern}</pattern>
289     </encoder>
290   </appender>
291   
292   <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
293     <queueSize>256</queueSize>
294     <appender-ref ref="EELFDebug" />
295     <includeCallerData>true</includeCallerData>
296   </appender>
297  
298   
299   <!-- ============================================================================ -->
300   <!--  EELF loggers -->
301   <!-- ============================================================================ -->
302   <logger name="com.att.eelf" level="info" additivity="false">
303     <appender-ref ref="asyncEELF" />
304   </logger>
305   <logger name="com.att.eelf.security" level="info" additivity="false">
306     <appender-ref ref="asyncEELFSecurity" />
307   </logger>
308   <logger name="com.att.eelf.perf" level="info" additivity="false">
309     <appender-ref ref="asyncEELFPerformance" />
310   </logger>
311   <logger name="com.att.eelf.server" level="info" additivity="false">
312     <appender-ref ref="asyncEELFServer" />
313   </logger>
314   <logger name="com.att.eelf.policy" level="info" additivity="false">
315     <appender-ref ref="asyncEELFPolicy" />
316   </logger>
317
318   <logger name="org.openecomp.sdc.common.ecomplog.EcompLoggerAudit" level="info" additivity="false">
319     <appender-ref ref="asyncEELFAudit" />
320   </logger>
321   
322   <logger name="com.att.eelf.metrics" level="info" additivity="false">
323         <appender-ref ref="asyncEELFMetrics" />
324   </logger>
325  
326  
327    <logger name="com.att.eelf.error" level="error" additivity="false">
328   <appender-ref ref="asyncEELFError" />
329   </logger>
330   
331    <logger name="com.att.eelf.debug" level="debug" additivity="false">
332         <appender-ref ref="asyncEELFDebug" />
333   </logger>
334   
335   
336
337   
338   <root level="INFO">
339     <appender-ref ref="asyncEELF" />
340   </root>
341
342 </configuration>