3b8a2574400280f1cd705069fe6b485ac045947f
[aai/traversal.git] / aai-traversal / ajsc-shared-config / etc / logback.xml
1 <!--
2
3     ============LICENSE_START=======================================================
4     org.onap.aai
5     ================================================================================
6     Copyright © 2017 AT&T Intellectual Property. All rights reserved.
7     ================================================================================
8     Licensed under the Apache License, Version 2.0 (the "License");
9     you may not use this file except in compliance with the License.
10     You may obtain a copy of the License at
11
12        http://www.apache.org/licenses/LICENSE-2.0
13
14     Unless required by applicable law or agreed to in writing, software
15     distributed under the License is distributed on an "AS IS" BASIS,
16     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17     See the License for the specific language governing permissions and
18     limitations under the License.
19     ============LICENSE_END=========================================================
20
21     ECOMP is a trademark and service mark of AT&T Intellectual Property.
22
23 -->
24 <configuration scan="true" scanPeriod="60 seconds" debug="false">
25         <contextName>${module.ajsc.namespace.name}</contextName>
26         <jmxConfigurator />
27         <property name="logDirectory" value="${AJSC_HOME}/logs" />
28         <property name="eelfLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
29         <property name="eelfAuditLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n|\r\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n|\r\n', '^'}%n"/>
30         <property name="eelfMetricLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%X{statusCode}|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{targetVirtualEntity}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
31         
32         <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
33                 <filter class="ch.qos.logback.classic.filter.LevelFilter">
34                         <level>ERROR</level>
35                         <onMatch>ACCEPT</onMatch>
36                         <onMismatch>DENY</onMismatch>
37                 </filter>
38                 <encoder>
39                         <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
40                         </pattern>
41                 </encoder>
42         </appender>
43
44         <appender name="SANE" class="ch.qos.logback.core.rolling.RollingFileAppender">
45                 <file>${logDirectory}/rest/sane.log</file>
46                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
47                         <fileNamePattern>${logDirectory}/rest/sane.log.%d{yyyy-MM-dd}</fileNamePattern>
48                 </rollingPolicy>
49                 <encoder>
50                         <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n
51                         </pattern>
52                 </encoder>
53         </appender>
54
55         <appender name="asyncSANE" class="ch.qos.logback.classic.AsyncAppender">
56                 <queueSize>1000</queueSize>
57                 <includeCallerData>true</includeCallerData>
58                 <appender-ref ref="SANE" />
59         </appender>
60
61         <appender name="METRIC"
62                 class="ch.qos.logback.core.rolling.RollingFileAppender">
63                 <filter class="ch.qos.logback.classic.filter.LevelFilter">
64                         <level>INFO</level>
65                         <onMatch>ACCEPT</onMatch>
66                         <onMismatch>DENY</onMismatch>
67                 </filter>
68                 <file>${logDirectory}/rest/metrics.log</file>
69                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
70                         <fileNamePattern>${logDirectory}/rest/metrics.log.%d{yyyy-MM-dd}
71                         </fileNamePattern>
72                 </rollingPolicy>
73                 <encoder class="org.onap.aai.logging.EcompEncoder">
74                         <pattern>${eelfMetricLogPattern}</pattern>
75                 </encoder>
76         </appender>
77         <appender name="asyncMETRIC" class="ch.qos.logback.classic.AsyncAppender">
78                 <queueSize>1000</queueSize>
79                 <includeCallerData>true</includeCallerData>
80                 <appender-ref ref="METRIC" />
81         </appender>
82
83         <appender name="DEBUG"
84                 class="ch.qos.logback.core.rolling.RollingFileAppender">
85                 <filter class="ch.qos.logback.classic.filter.LevelFilter">
86                         <level>DEBUG</level>
87                         <onMatch>ACCEPT</onMatch>
88                         <onMismatch>DENY</onMismatch>
89                 </filter>
90                 <file>${logDirectory}/rest/debug.log</file>
91                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
92                         <fileNamePattern>${logDirectory}/rest/debug.log.%d{yyyy-MM-dd}
93                         </fileNamePattern>
94                 </rollingPolicy>
95                 <encoder class="org.onap.aai.logging.EcompEncoder">
96                         <pattern>${eelfLogPattern}</pattern>
97                 </encoder>
98         </appender>
99
100         <appender name="asyncDEBUG" class="ch.qos.logback.classic.AsyncAppender">
101                 <queueSize>1000</queueSize>
102                 <includeCallerData>true</includeCallerData>
103                 <appender-ref ref="DEBUG" />
104         </appender>
105
106         <appender name="ERROR"
107                 class="ch.qos.logback.core.rolling.RollingFileAppender">
108                 <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
109                         <level>WARN</level>
110                 </filter>
111                 <file>${logDirectory}/rest/error.log</file>
112                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
113                         <fileNamePattern>${logDirectory}/rest/error.log.%d{yyyy-MM-dd}
114                         </fileNamePattern>
115                 </rollingPolicy>
116                 <encoder class="org.onap.aai.logging.EcompEncoder">
117                         <pattern>${eelfLogPattern}</pattern>
118                 </encoder>
119         </appender>
120
121         <appender name="asyncERROR" class="ch.qos.logback.classic.AsyncAppender">
122                 <queueSize>1000</queueSize>
123                 <includeCallerData>true</includeCallerData>
124                 <appender-ref ref="ERROR" />
125         </appender>
126
127         <appender name="AUDIT"
128                 class="ch.qos.logback.core.rolling.RollingFileAppender">
129                 <file>${logDirectory}/rest/audit.log</file>
130                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
131                         <fileNamePattern>${logDirectory}/rest/audit.log.%d{yyyy-MM-dd}
132                         </fileNamePattern>
133                 </rollingPolicy>
134                 <encoder class="org.onap.aai.logging.EcompEncoder">
135                         <pattern>${eelfAuditLogPattern}</pattern>
136                 </encoder>
137         </appender>
138
139         <appender name="asyncAUDIT" class="ch.qos.logback.classic.AsyncAppender">
140                 <queueSize>1000</queueSize>
141                 <includeCallerData>true</includeCallerData>
142                 <appender-ref ref="AUDIT" />
143         </appender>
144
145         <appender name="translog"
146                 class="ch.qos.logback.core.rolling.RollingFileAppender">
147                 <filter class="ch.qos.logback.classic.filter.LevelFilter">
148                         <level>DEBUG</level>
149                         <onMatch>ACCEPT</onMatch>
150                         <onMismatch>DENY</onMismatch>
151                 </filter>
152                 <file>${logDirectory}/rest/translog.log</file>
153                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
154                         <fileNamePattern>${logDirectory}/rest/translog.log.%d{yyyy-MM-dd}
155                         </fileNamePattern>
156                 </rollingPolicy>
157                 <encoder class="org.onap.aai.logging.EcompEncoder">
158                         <pattern>${eelfLogPattern}</pattern>
159                 </encoder>
160         </appender>
161         
162         <appender name="asynctranslog" class="ch.qos.logback.classic.AsyncAppender">
163                 <queueSize>1000</queueSize>
164                 <includeCallerData>true</includeCallerData>
165                 <appender-ref ref="translog" />
166         </appender>
167
168         <appender name="dmaapAAIEventConsumer"
169                 class="ch.qos.logback.core.rolling.RollingFileAppender">
170                 <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
171                         <level>WARN</level>
172                 </filter>
173                 <File>${logDirectory}/dmaapAAIEventConsumer/error.log</File>
174                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
175                         <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/error.log.%d{yyyy-MM-dd}
176                         </fileNamePattern>
177                 </rollingPolicy>
178                 <encoder class="org.onap.aai.logging.EcompEncoder">
179                         <pattern>${eelfLogPattern}</pattern>
180                 </encoder>
181         </appender>
182
183         <appender name="dmaapAAIEventConsumerDebug"
184                 class="ch.qos.logback.core.rolling.RollingFileAppender">
185                 <filter class="ch.qos.logback.classic.filter.LevelFilter">
186                         <level>DEBUG</level>
187                         <onMatch>ACCEPT</onMatch>
188                         <onMismatch>DENY</onMismatch>
189                 </filter>
190                 <File>${logDirectory}/dmaapAAIEventConsumer/debug.log</File>
191                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
192                         <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/debug.log.%d{yyyy-MM-dd}
193                         </fileNamePattern>
194                 </rollingPolicy>
195                 <encoder class="org.onap.aai.logging.EcompEncoder">
196                         <pattern>${eelfLogPattern}</pattern>
197                 </encoder>
198         </appender>
199         <appender name="dmaapAAIEventConsumerMetric"
200                 class="ch.qos.logback.core.rolling.RollingFileAppender">
201                 <filter class="ch.qos.logback.classic.filter.LevelFilter">
202                         <level>INFO</level>
203                         <onMatch>ACCEPT</onMatch>
204                         <onMismatch>DENY</onMismatch>
205                 </filter>
206                 <File>${logDirectory}/dmaapAAIEventConsumer/metrics.log</File>
207                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
208                         <fileNamePattern>${logDirectory}/dmaapAAIEventConsumer/metrics.log.%d{yyyy-MM-dd}
209                         </fileNamePattern>
210                 </rollingPolicy>
211                 <encoder class="org.onap.aai.logging.EcompEncoder">
212                         <pattern>${eelfLogPattern}</pattern>
213                 </encoder>
214         </appender>
215
216         <!-- Spring related loggers -->
217         <logger name="org.springframework" level="WARN" />
218         <logger name="org.springframework.beans" level="WARN" />
219         <logger name="org.springframework.web" level="WARN" />
220         <logger name="com.blog.spring.jms" level="WARN" />
221         <logger name="com.jayway.jsonpath" level="WARN" />
222
223         <!-- AJSC Services (bootstrap services) -->
224         <logger name="ajsc" level="WARN" />
225         <logger name="ajsc.RouteMgmtService" level="WARN" />
226         <logger name="ajsc.ComputeService" level="WARN" />
227         <logger name="ajsc.VandelayService" level="WARN" />
228         <logger name="ajsc.FilePersistenceService" level="WARN" />
229         <logger name="ajsc.UserDefinedJarService" level="WARN" />
230         <logger name="ajsc.UserDefinedBeansDefService" level="WARN" />
231         <logger name="ajsc.LoggingConfigurationService" level="WARN" />
232
233         <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet 
234                 logging) -->
235         <logger name="ajsc.utils" level="WARN" />
236         <logger name="ajsc.utils.DME2Helper" level="WARN" />
237         <logger name="ajsc.filters" level="WARN" />
238         <logger name="ajsc.beans.interceptors" level="WARN" />
239         <logger name="ajsc.restlet" level="WARN" />
240         <logger name="ajsc.servlet" level="WARN" />
241         <logger name="com.att.ajsc" level="WARN" />
242         <logger name="com.att.ajsc.csi.logging" level="WARN" />
243         <logger name="com.att.ajsc.filemonitor" level="WARN" />
244
245         <!-- Other Loggers that may help troubleshoot -->
246         <logger name="net.sf" level="WARN" />
247         <logger name="org.apache.commons.httpclient" level="WARN" />
248         <logger name="org.apache.commons" level="WARN" />
249         <logger name="org.apache.coyote" level="WARN" />
250         <logger name="org.apache.jasper" level="WARN" />
251
252         <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging. 
253                 May aid in troubleshooting) -->
254         <logger name="org.apache.camel" level="WARN" />
255         <logger name="org.apache.cxf" level="WARN" />
256         <logger name="org.apache.camel.processor.interceptor" level="WARN" />
257         <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
258         <logger name="org.apache.cxf.service" level="WARN" />
259         <logger name="org.restlet" level="WARN" />
260         <logger name="org.apache.camel.component.restlet" level="WARN" />
261
262         <!-- logback internals logging -->
263         <logger name="ch.qos.logback.classic" level="WARN" />
264         <logger name="ch.qos.logback.core" level="WARN" />
265
266         <!-- logback jms appenders & loggers definition starts here -->
267         <appender name="auditLogs"
268                 class="ch.qos.logback.core.rolling.RollingFileAppender">
269                 <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
270                 <file>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.log
271                 </file>
272                 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
273                         <fileNamePattern>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.%i.log.zip
274                         </fileNamePattern>
275                         <minIndex>1</minIndex>
276                         <maxIndex>9</maxIndex>
277                 </rollingPolicy>
278                 <triggeringPolicy
279                         class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
280                         <maxFileSize>5MB</maxFileSize>
281                 </triggeringPolicy>
282                 <encoder>
283                         <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
284                 </encoder>
285         </appender>
286         <appender name="perfLogs"
287                 class="ch.qos.logback.core.rolling.RollingFileAppender">
288                 <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
289                 <file>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.log
290                 </file>
291                 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
292                         <fileNamePattern>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.%i.log.zip
293                         </fileNamePattern>
294                         <minIndex>1</minIndex>
295                         <maxIndex>9</maxIndex>
296                 </rollingPolicy>
297                 <triggeringPolicy
298                         class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
299                         <maxFileSize>5MB</maxFileSize>
300                 </triggeringPolicy>
301                 <encoder>
302                         <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
303                 </encoder>
304         </appender>
305         <appender name="ASYNC-audit" class="ch.qos.logback.classic.AsyncAppender">
306                 <queueSize>1000</queueSize>
307                 <includeCallerData>true</includeCallerData>
308                 <discardingThreshold>0</discardingThreshold>
309                 <appender-ref ref="Audit-Record-Queue" />
310         </appender>
311         <appender name="ASYNC-perf" class="ch.qos.logback.classic.AsyncAppender">
312                 <queueSize>1000</queueSize>
313                 <includeCallerData>true</includeCallerData>
314                 <discardingThreshold>0</discardingThreshold>
315                 <appender-ref ref="Performance-Tracker-Queue" />
316         </appender>
317         <logger name="AuditRecord" level="INFO" additivity="false">
318                 <appender-ref ref="ASYNC-audit" />
319                 <appender-ref ref="auditLogs" />
320         </logger>
321         <logger name="AuditRecord_DirectCall" level="INFO" additivity="false">
322                 <appender-ref ref="ASYNC-audit" />
323                 <appender-ref ref="auditLogs" />
324         </logger>
325         <logger name="PerfTrackerRecord" level="INFO" additivity="false">
326                 <appender-ref ref="ASYNC-perf" />
327                 <appender-ref ref="perfLogs" />
328         </logger>
329         <!-- logback jms appenders & loggers definition ends here -->
330
331         <logger name="org.onap.aai.interceptors" level="DEBUG"
332                 additivity="false">
333                 <appender-ref ref="asynctranslog" />
334         </logger>
335
336         <logger name="org.onap.aai.interceptors.PreAaiAjscInterceptor" level="DEBUG">
337                 <appender-ref ref="asyncAUDIT"/>
338         </logger>
339
340         <logger name="org.onap.aai.interceptors.PostAaiAjscInterceptor" level="DEBUG">
341                 <appender-ref ref="asyncAUDIT"/>
342         </logger>
343
344         <logger name="org.onap.aai.dmaap" level="DEBUG" additivity="false">
345                 <appender-ref ref="dmaapAAIEventConsumer" />
346                 <appender-ref ref="dmaapAAIEventConsumerDebug" />
347                 <appender-ref ref="dmaapAAIEventConsumerMetric" />
348         </logger>
349
350         <logger name="org.apache" level="WARN" />
351         <logger name="org.zookeeper" level="WARN" />
352         <logger name="com.thinkaurelius" level="WARN" />
353
354         <!-- ============================================================================ -->
355         <!-- General EELF logger -->
356         <!-- ============================================================================ -->
357         <logger name="com.att.eelf" level="WARN" additivity="false">
358                 <appender-ref ref="asyncDEBUG" />
359                 <appender-ref ref="asyncERROR" />
360                 <appender-ref ref="asyncMETRIC" />
361         </logger>
362
363         <root level="DEBUG">
364                 <appender-ref ref="asyncDEBUG" />
365                 <appender-ref ref="asyncERROR" />
366                 <appender-ref ref="asyncMETRIC" />
367                 <appender-ref ref="asyncSANE" />
368         </root>
369 </configuration>