update DR logging to log under one system
[dmaap/datarouter.git] / datarouter-node / 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="jettyAndNodeLogName" value="node"></property>
46   <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" />
47   <property name="jettyAndNodeLoggerPattern" value="%d{MM/dd-HH:mm:ss.SSS}|%logger|%thread|%.-5level|%msg%n" />
48   <property name="logDirectory" value="${logDir}" />
49   <!-- property name="debugLogDirectory" value="${debugDir}/${componentName}" /-->
50
51
52   <!-- Example evaluator filter applied against console appender -->
53   <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
54     <encoder>
55       <pattern>${defaultPattern}</pattern>
56     </encoder>
57   </appender>
58
59   <!-- ============================================================================ -->
60   <!-- EELF Appenders -->
61   <!-- ============================================================================ -->
62
63   <!-- The EELFAppender is used to record events to the general application
64     log -->
65
66
67   <appender name="EELF"
68     class="ch.qos.logback.core.rolling.RollingFileAppender">
69     <file>${logDirectory}/${generalLogName}.log</file>
70      <filter class="ch.qos.logback.classic.filter.LevelFilter">
71         <level>INFO</level>
72         <onMatch>ACCEPT</onMatch>
73         <onMismatch>DENY</onMismatch>
74     </filter>
75     <rollingPolicy
76       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
77       <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip
78       </fileNamePattern>
79       <minIndex>1</minIndex>
80       <maxIndex>9</maxIndex>
81     </rollingPolicy>
82     <triggeringPolicy
83       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
84       <maxFileSize>5MB</maxFileSize>
85     </triggeringPolicy>
86     <encoder>
87       <pattern>${defaultPattern}</pattern>
88     </encoder>
89   </appender>
90
91   <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">
92     <queueSize>256</queueSize>
93     <appender-ref ref="EELF" />
94   </appender>
95
96   <!-- EELF Security Appender. This appender is used to record security events
97     to the security log file. Security events are separate from other loggers
98     in EELF so that security log records can be captured and managed in a secure
99     way separate from the other logs. This appender is set to never discard any
100     events. -->
101   <!--appender name="EELFSecurity"
102     class="ch.qos.logback.core.rolling.RollingFileAppender">
103     <file>${logDirectory}/${securityLogName}.log</file>
104     <rollingPolicy
105       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
106       <fileNamePattern>${logDirectory}/${securityLogName}.%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
120   <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
121     <queueSize>256</queueSize>
122     <discardingThreshold>0</discardingThreshold>
123     <appender-ref ref="EELFSecurity" />
124   </appender-->
125
126   <!-- EELF Performance Appender. This appender is used to record performance
127     records. -->
128   <!--appender name="EELFPerformance"
129     class="ch.qos.logback.core.rolling.RollingFileAppender">
130     <file>${logDirectory}/${performanceLogName}.log</file>
131     <rollingPolicy
132       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
133       <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip
134       </fileNamePattern>
135       <minIndex>1</minIndex>
136       <maxIndex>9</maxIndex>
137     </rollingPolicy>
138     <triggeringPolicy
139       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
140       <maxFileSize>5MB</maxFileSize>
141     </triggeringPolicy>
142     <encoder>
143       <outputPatternAsHeader>true</outputPatternAsHeader>
144       <pattern>${defaultPattern}</pattern>
145     </encoder>
146   </appender>
147   <appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender">
148     <queueSize>256</queueSize>
149     <appender-ref ref="EELFPerformance" />
150   </appender-->
151
152   <!-- EELF Server Appender. This appender is used to record Server related
153     logging events. The Server logger and appender are specializations of the
154     EELF application root logger and appender. This can be used to segregate Server
155     events from other components, or it can be eliminated to record these events
156     as part of the application root log. -->
157   <!--appender name="EELFServer"
158     class="ch.qos.logback.core.rolling.RollingFileAppender">
159     <file>${logDirectory}/${serverLogName}.log</file>
160     <rollingPolicy
161       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
162       <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip
163       </fileNamePattern>
164       <minIndex>1</minIndex>
165       <maxIndex>9</maxIndex>
166     </rollingPolicy>
167     <triggeringPolicy
168       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
169       <maxFileSize>5MB</maxFileSize>
170     </triggeringPolicy>
171     <encoder>
172         <pattern>${defaultPattern}</pattern>
173     </encoder>
174   </appender>
175   <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
176     <queueSize>256</queueSize>
177     <appender-ref ref="EELFServer" />
178   </appender-->
179
180
181   <!-- EELF Policy Appender. This appender is used to record Policy engine
182     related logging events. The Policy logger and appender are specializations
183     of the EELF application root logger and appender. This can be used to segregate
184     Policy engine events from other components, or it can be eliminated to record
185     these events as part of the application root log. -->
186   <!--appender name="EELFPolicy"
187     class="ch.qos.logback.core.rolling.RollingFileAppender">
188     <file>${logDirectory}/${policyLogName}.log</file>
189     <rollingPolicy
190       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
191       <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip
192       </fileNamePattern>
193       <minIndex>1</minIndex>
194       <maxIndex>9</maxIndex>
195     </rollingPolicy>
196     <triggeringPolicy
197       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
198       <maxFileSize>5MB</maxFileSize>
199     </triggeringPolicy>
200     <encoder>
201         <pattern>${defaultPattern}</pattern>
202     </encoder>
203   </appender>
204   <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
205     <queueSize>256</queueSize>
206     <appender-ref ref="EELFPolicy" >
207   </appender-->
208
209
210   <!-- EELF Audit Appender. This appender is used to record audit engine
211     related logging events. The audit logger and appender are specializations
212     of the EELF application root logger and appender. This can be used to segregate
213     Policy engine events from other components, or it can be eliminated to record
214     these events as part of the application root log. -->
215
216   <!--appender name="EELFAudit"
217     class="ch.qos.logback.core.rolling.RollingFileAppender">
218     <file>${logDirectory}/${auditLogName}.log</file>
219     <rollingPolicy
220       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
221       <fileNamePattern>${logDirectory}/${auditLogName}.%i.log.zip
222       </fileNamePattern>
223       <minIndex>1</minIndex>
224       <maxIndex>9</maxIndex>
225     </rollingPolicy>
226     <triggeringPolicy
227       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
228       <maxFileSize>5MB</maxFileSize>
229     </triggeringPolicy>
230     <encoder>
231          <pattern>${defaultPattern}</pattern>
232     </encoder>
233   </appender>
234   <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
235     <queueSize>256</queueSize>
236     <appender-ref ref="EELFAudit" />
237   </appender-->
238
239 <!--appender name="EELFMetrics"
240     class="ch.qos.logback.core.rolling.RollingFileAppender">
241     <file>${logDirectory}/${metricsLogName}.log</file>
242     <rollingPolicy
243       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
244       <fileNamePattern>${logDirectory}/${metricsLogName}.%i.log.zip
245       </fileNamePattern>
246       <minIndex>1</minIndex>
247       <maxIndex>9</maxIndex>
248     </rollingPolicy>
249     <triggeringPolicy
250       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
251       <maxFileSize>5MB</maxFileSize>
252     </triggeringPolicy>
253     <encoder-->
254       <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} -
255         %msg%n"</pattern> -->
256       <!--pattern>${defaultPattern}</pattern>
257     </encoder>
258   </appender>
259
260
261   <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
262     <queueSize>256</queueSize>
263     <appender-ref ref="EELFMetrics"/>
264   </appender-->
265
266   <appender name="EELFError"
267     class="ch.qos.logback.core.rolling.RollingFileAppender">
268     <file>${logDirectory}/${errorLogName}.log</file>
269     <filter class="ch.qos.logback.classic.filter.LevelFilter">
270         <level>ERROR</level>
271         <onMatch>ACCEPT</onMatch>
272         <onMismatch>DENY</onMismatch>
273     </filter>
274     <rollingPolicy
275       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
276       <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip
277       </fileNamePattern>
278       <minIndex>1</minIndex>
279       <maxIndex>9</maxIndex>
280     </rollingPolicy>
281     <triggeringPolicy
282       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
283       <maxFileSize>5MB</maxFileSize>
284     </triggeringPolicy>
285     <encoder>
286       <pattern>${defaultPattern}</pattern>
287     </encoder>
288   </appender>
289
290   <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
291     <queueSize>256</queueSize>
292     <appender-ref ref="EELFError"/>
293   </appender>
294
295   <!-- ============================================================================ -->
296    <appender name="jettyAndNodelog"
297     class="ch.qos.logback.core.rolling.RollingFileAppender">
298     <file>${logDirectory}/${jettyAndNodeLogName}.log</file>
299      <filter class="org.onap.dmaap.datarouter.node.eelf.EELFFilter" />
300     <rollingPolicy
301       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
302       <fileNamePattern>${logDirectory}/${jettyAndNodeLogName}.%i.log.zip
303       </fileNamePattern>
304       <minIndex>1</minIndex>
305       <maxIndex>9</maxIndex>
306     </rollingPolicy>
307     <triggeringPolicy
308       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
309       <maxFileSize>5MB</maxFileSize>
310     </triggeringPolicy>
311     <encoder>
312       <pattern>${jettyAndNodeLoggerPattern}</pattern>
313     </encoder>
314   </appender>
315
316   <appender name="asyncEELFjettyAndNodelog" class="ch.qos.logback.classic.AsyncAppender">
317     <queueSize>256</queueSize>
318     <appender-ref ref="jettyAndNodelog" />
319     <includeCallerData>true</includeCallerData>
320   </appender>
321
322    <!-- ============================================================================ -->
323
324
325   <!-- ============================================================================ -->
326   <!--  EELF loggers -->
327   <!-- ============================================================================ -->
328   <logger name="com.att.eelf" level="info" additivity="false">
329     <appender-ref ref="asyncEELF" />
330   </logger>
331
332      <logger name="com.att.eelf.error" level="error" additivity="false">
333           <appender-ref ref="asyncEELFError" />
334       </logger>
335
336      <logger name="log4j.logger.org.eclipse.jetty" additivity="false" level="info">
337         <appender-ref ref="asyncEELFjettyAndNodelog"/>
338     </logger>
339
340   <!-- logger name="com.att.eelf.security" level="info" additivity="false">
341     <appender-ref ref="asyncEELFSecurity" />
342   </logger>
343   <logger name="com.att.eelf.perf" level="info" additivity="false">
344     <appender-ref ref="asyncEELFPerformance" />
345   </logger>
346   <logger name="com.att.eelf.server" level="info" additivity="false">
347     <appender-ref ref="asyncEELFServer" />
348   </logger>
349   <logger name="com.att.eelf.policy" level="info" additivity="false">
350     <appender-ref ref="asyncEELFPolicy" />
351   </logger>
352
353   <logger name="com.att.eelf.audit" level="info" additivity="false">
354     <appender-ref ref="asyncEELFAudit" />
355   </logger>
356
357   <logger name="com.att.eelf.metrics" level="info" additivity="false">
358         <appender-ref ref="asyncEELFMetrics" />
359   </logger>
360
361    <logger name="com.att.eelf.debug" level="debug" additivity="false">
362         <appender-ref ref="asyncEELFDebug" />
363   </logger-->
364
365
366
367
368   <root level="TRACE">
369     <appender-ref ref="asyncEELF" />
370     <appender-ref ref="asyncEELFError" />
371     <appender-ref ref="asyncEELFjettyAndNodelog" />
372   </root>
373
374 </configuration>