More bug fix and refactoring
[dmaap/datarouter.git] / datarouter-prov / src / main / resources / logback.xml
1 <!--
2   ============LICENSE_START==================================================
3   * org.onap.dmaap
4   * ===========================================================================
5   * Copyright © 2017 AT&T Intellectual Property. All rights reserved.
6   * ===========================================================================
7   * Licensed under the Apache License, Version 2.0 (the "License");
8   * you may not use this file except in compliance with the License.
9   * You may obtain a copy of the License at
10   *
11    *      http://www.apache.org/licenses/LICENSE-2.0
12   *
13    * Unless required by applicable law or agreed to in writing, software
14   * distributed under the License is distributed on an "AS IS" BASIS,
15   * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16   * See the License for the specific language governing permissions and
17   * limitations under the License.
18   * ============LICENSE_END====================================================
19   *
20   * ECOMP is a trademark and service mark of AT&T Intellectual Property.
21   *
22 -->
23 <configuration scan="true" scanPeriod="3 seconds" debug="true">
24   <!--<jmxConfigurator /> -->
25   <!-- directory path for all other type logs -->
26   <!-- property name="logDir" value="/home/eby/dr2/logs" / -->
27   <property name="logDir" value="/opt/app/datartr/logs" />
28
29   <!-- directory path for debugging type logs -->
30   <!-- property name="debugDir" value="/home/eby/dr2/debug-logs" /-->
31
32   <!--  specify the component name
33     <ECOMP-component-name>::= "MSO" | "DCAE" | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC"  -->
34   <!-- This creates the MSO directory in in the LogDir which is not needed, mentioned last directory of the path-->
35   <!-- property name="componentName" value="logs"></property -->
36
37   <!--  log file names -->
38   <property name="generalLogName" value="apicalls" />
39   <!-- name="securityLogName" value="security" -->
40   <!-- name="performanceLogName" value="performance" -->
41   <!-- name="serverLogName" value="server" -->
42   <!-- name="policyLogName" value="policy"-->
43   <property name="errorLogName" value="errors" />
44   <!-- name="metricsLogName" value="metrics" -->
45   <property name="debugLogName" value="debug"/>
46   <property name="jettyLogName" value="jetty"/>
47   <property name="defaultPattern"     value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{InvocationId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|%msg%n" />
48   <property name="jettyLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
49
50   <property name="debugLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%X{RequestId}|%X{InvocationId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />
51
52   <property name="logDirectory" value="${logDir}" />
53   <!-- property name="debugLogDirectory" value="${debugDir}/${componentName}" /-->
54
55
56   <!-- Example evaluator filter applied against console appender -->
57   <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
58     <encoder>
59       <pattern>${defaultPattern}</pattern>
60     </encoder>
61   </appender>
62
63   <!-- ============================================================================ -->
64   <!-- EELF Appenders -->
65   <!-- ============================================================================ -->
66
67   <!-- The EELFAppender is used to record events to the general application
68     log -->
69
70
71   <appender name="EELF"
72     class="ch.qos.logback.core.rolling.RollingFileAppender">
73     <file>${logDirectory}/${generalLogName}.log</file>
74      <filter class="ch.qos.logback.classic.filter.LevelFilter">
75         <level>INFO</level>
76         <onMatch>ACCEPT</onMatch>
77         <onMismatch>DENY</onMismatch>
78     </filter>
79     <rollingPolicy
80       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
81       <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
82       </fileNamePattern>
83       <minIndex>1</minIndex>
84       <maxIndex>9</maxIndex>
85     </rollingPolicy>
86     <triggeringPolicy
87       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
88       <maxFileSize>5MB</maxFileSize>
89     </triggeringPolicy>
90     <encoder>
91       <pattern>${defaultPattern}</pattern>
92     </encoder>
93   </appender>
94
95   <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
96     <queueSize>256</queueSize>
97     <appender-ref ref="EELF" />
98   </appender>
99
100   <!-- EELF Security Appender. This appender is used to record security events
101     to the security log file. Security events are separate from other loggers
102     in EELF so that security log records can be captured and managed in a secure
103     way separate from the other logs. This appender is set to never discard any
104     events. -->
105   <!--appender name="EELFSecurity"
106     class="ch.qos.logback.core.rolling.RollingFileAppender">
107     <file>${logDirectory}/${securityLogName}.log</file>
108     <rollingPolicy
109       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
110       <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip
111       </fileNamePattern>
112       <minIndex>1</minIndex>
113       <maxIndex>9</maxIndex>
114     </rollingPolicy>
115     <triggeringPolicy
116       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
117       <maxFileSize>5MB</maxFileSize>
118     </triggeringPolicy>
119     <encoder>
120       <pattern>${defaultPattern}</pattern>
121     </encoder>
122   </appender>
123
124   <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
125     <queueSize>256</queueSize>
126     <discardingThreshold>0</discardingThreshold>
127     <appender-ref ref="EELFSecurity" />
128   </appender-->
129
130   <!-- EELF Performance Appender. This appender is used to record performance
131     records. -->
132   <!--appender name="EELFPerformance"
133     class="ch.qos.logback.core.rolling.RollingFileAppender">
134     <file>${logDirectory}/${performanceLogName}.log</file>
135     <rollingPolicy
136       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
137       <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip
138       </fileNamePattern>
139       <minIndex>1</minIndex>
140       <maxIndex>9</maxIndex>
141     </rollingPolicy>
142     <triggeringPolicy
143       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
144       <maxFileSize>5MB</maxFileSize>
145     </triggeringPolicy>
146     <encoder>
147       <outputPatternAsHeader>true</outputPatternAsHeader>
148       <pattern>${defaultPattern}</pattern>
149     </encoder>
150   </appender>
151   <appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender">
152     <queueSize>256</queueSize>
153     <appender-ref ref="EELFPerformance" />
154   </appender-->
155
156   <!-- EELF Server Appender. This appender is used to record Server related
157     logging events. The Server logger and appender are specializations of the
158     EELF application root logger and appender. This can be used to segregate Server
159     events from other components, or it can be eliminated to record these events
160     as part of the application root log. -->
161   <!--appender name="EELFServer"
162     class="ch.qos.logback.core.rolling.RollingFileAppender">
163     <file>${logDirectory}/${serverLogName}.log</file>
164     <rollingPolicy
165       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
166       <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip
167       </fileNamePattern>
168       <minIndex>1</minIndex>
169       <maxIndex>9</maxIndex>
170     </rollingPolicy>
171     <triggeringPolicy
172       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
173       <maxFileSize>5MB</maxFileSize>
174     </triggeringPolicy>
175     <encoder>
176         <pattern>${defaultPattern}</pattern>
177     </encoder>
178   </appender>
179   <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
180     <queueSize>256</queueSize>
181     <appender-ref ref="EELFServer" />
182   </appender-->
183
184
185   <!-- EELF Policy Appender. This appender is used to record Policy engine
186     related logging events. The Policy logger and appender are specializations
187     of the EELF application root logger and appender. This can be used to segregate
188     Policy engine events from other components, or it can be eliminated to record
189     these events as part of the application root log. -->
190   <!--appender name="EELFPolicy"
191     class="ch.qos.logback.core.rolling.RollingFileAppender">
192     <file>${logDirectory}/${policyLogName}.log</file>
193     <rollingPolicy
194       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
195       <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip
196       </fileNamePattern>
197       <minIndex>1</minIndex>
198       <maxIndex>9</maxIndex>
199     </rollingPolicy>
200     <triggeringPolicy
201       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
202       <maxFileSize>5MB</maxFileSize>
203     </triggeringPolicy>
204     <encoder>
205         <pattern>${defaultPattern}</pattern>
206     </encoder>
207   </appender>
208   <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
209     <queueSize>256</queueSize>
210     <appender-ref ref="EELFPolicy" >
211   </appender-->
212
213
214   <!-- EELF Audit Appender. This appender is used to record audit engine
215     related logging events. The audit logger and appender are specializations
216     of the EELF application root logger and appender. This can be used to segregate
217     Policy engine events from other components, or it can be eliminated to record
218     these events as part of the application root log. -->
219
220   <!--appender name="EELFAudit"
221     class="ch.qos.logback.core.rolling.RollingFileAppender">
222     <file>${logDirectory}/${auditLogName}.log</file>
223     <rollingPolicy
224       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
225       <fileNamePattern>${logDirectory}/${auditLogName}.%i.log.zip
226       </fileNamePattern>
227       <minIndex>1</minIndex>
228       <maxIndex>9</maxIndex>
229     </rollingPolicy>
230     <triggeringPolicy
231       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
232       <maxFileSize>5MB</maxFileSize>
233     </triggeringPolicy>
234     <encoder>
235          <pattern>${defaultPattern}</pattern>
236     </encoder>
237   </appender>
238   <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
239     <queueSize>256</queueSize>
240     <appender-ref ref="EELFAudit" />
241   </appender-->
242
243 <!--appender name="EELFMetrics"
244     class="ch.qos.logback.core.rolling.RollingFileAppender">
245     <file>${logDirectory}/${metricsLogName}.log</file>
246     <rollingPolicy
247       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
248       <fileNamePattern>${logDirectory}/${metricsLogName}.%i.log.zip
249       </fileNamePattern>
250       <minIndex>1</minIndex>
251       <maxIndex>9</maxIndex>
252     </rollingPolicy>
253     <triggeringPolicy
254       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
255       <maxFileSize>5MB</maxFileSize>
256     </triggeringPolicy>
257     <encoder-->
258       <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
259         %msg%n"</pattern> -->
260       <!--pattern>${defaultPattern}</pattern>
261     </encoder>
262   </appender>
263
264
265   <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
266     <queueSize>256</queueSize>
267     <appender-ref ref="EELFMetrics"/>
268   </appender-->
269
270   <appender name="EELFError"
271     class="ch.qos.logback.core.rolling.RollingFileAppender">
272     <file>${logDirectory}/${errorLogName}.log</file>
273     <filter class="ch.qos.logback.classic.filter.LevelFilter">
274         <level>ERROR</level>
275         <onMatch>ACCEPT</onMatch>
276         <onMismatch>DENY</onMismatch>
277     </filter>
278     <rollingPolicy
279       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
280       <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
281       </fileNamePattern>
282       <minIndex>1</minIndex>
283       <maxIndex>9</maxIndex>
284     </rollingPolicy>
285     <triggeringPolicy
286       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
287       <maxFileSize>5MB</maxFileSize>
288     </triggeringPolicy>
289     <encoder>
290       <pattern>${defaultPattern}</pattern>
291     </encoder>
292   </appender>
293
294   <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
295     <queueSize>256</queueSize>
296     <appender-ref ref="EELFError"/>
297   </appender>
298
299   <!-- ============================================================================ -->
300    <appender name="jettylog"
301     class="ch.qos.logback.core.rolling.RollingFileAppender">
302     <file>${logDirectory}/${jettyLogName}.log</file>
303      <filter class="org.onap.dmaap.datarouter.provisioning.eelf.JettyFilter" />
304     <rollingPolicy
305       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
306       <fileNamePattern>${logDirectory}/${jettyLogName}.%i.log.zip
307       </fileNamePattern>
308       <minIndex>1</minIndex>
309       <maxIndex>9</maxIndex>
310     </rollingPolicy>
311     <triggeringPolicy
312       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
313       <maxFileSize>50MB</maxFileSize>
314     </triggeringPolicy>
315     <encoder>
316       <pattern>${jettyLoggerPattern}</pattern>
317     </encoder>
318   </appender>
319
320   <appender name="asyncEELFjettylog" class="ch.qos.logback.classic.AsyncAppender">
321     <queueSize>256</queueSize>
322     <appender-ref ref="jettylog" />
323     <includeCallerData>true</includeCallerData>
324   </appender>
325
326    <!-- ============================================================================ -->
327
328
329    <appender name="EELFDebug"
330     class="ch.qos.logback.core.rolling.RollingFileAppender">
331     <file>${logDirectory}/${debugLogName}.log</file>
332        <filter class="org.onap.dmaap.datarouter.provisioning.eelf.DebugTraceFilter" />
333     <rollingPolicy
334       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
335       <fileNamePattern>${logDirectory}/${debugLogName}.%i.log.zip
336       </fileNamePattern>
337       <minIndex>1</minIndex>
338       <maxIndex>9</maxIndex>
339     </rollingPolicy>
340     <triggeringPolicy
341       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
342       <maxFileSize>5MB</maxFileSize>
343     </triggeringPolicy>
344     <encoder>
345       <pattern>${defaultPattern}</pattern>
346     </encoder>
347   </appender>
348
349   <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
350     <queueSize>256</queueSize>
351     <appender-ref ref="EELFDebug" />
352     <includeCallerData>true</includeCallerData>
353   </appender>
354
355
356   <!-- ============================================================================ -->
357   <!--  EELF loggers -->
358   <!-- ============================================================================ -->
359   <logger name="com.att.eelf" level="info" additivity="false">
360     <appender-ref ref="asyncEELF" />
361   </logger>
362
363      <logger name="com.att.eelf.error" level="error" additivity="false">
364           <appender-ref ref="asyncEELFError" />
365       </logger>
366
367      <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="error">
368         <appender-ref ref="asyncEELFjettylog"/>
369     </logger>
370
371     <logger name="com.att.eelf.debug" level="debug" additivity="false">
372         <appender-ref ref="asyncEELFDebug" />
373     </logger>
374
375   <!-- logger name="com.att.eelf.security" level="info" additivity="false">
376     <appender-ref ref="asyncEELFSecurity" />
377   </logger>
378   <logger name="com.att.eelf.perf" level="info" additivity="false">
379     <appender-ref ref="asyncEELFPerformance" />
380   </logger>
381   <logger name="com.att.eelf.server" level="info" additivity="false">
382     <appender-ref ref="asyncEELFServer" />
383   </logger>
384   <logger name="com.att.eelf.policy" level="info" additivity="false">
385     <appender-ref ref="asyncEELFPolicy" />
386   </logger>
387
388   <logger name="com.att.eelf.audit" level="info" additivity="false">
389     <appender-ref ref="asyncEELFAudit" />
390   </logger>
391
392   <logger name="com.att.eelf.metrics" level="info" additivity="false">
393         <appender-ref ref="asyncEELFMetrics" />
394   </logger>
395
396    <logger name="com.att.eelf.debug" level="debug" additivity="false">
397         <appender-ref ref="asyncEELFDebug" />
398   </logger-->
399
400
401
402
403   <root level="INFO">
404     <appender-ref ref="asyncEELF" />
405     <appender-ref ref="asyncEELFError" />
406     <appender-ref ref="asyncEELFjettylog" />
407     <appender-ref ref="asyncEELFDebug" />  </root>
408
409 </configuration>