71b6585d574a2c7800e8f38283e2bfc2e2752546
[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         <property name="eelfErrorLogPattern" value="%ecompStartTime|%X{requestId}|%-10t|%X{serviceName}|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompErrorCategory|%ecompResponseCode|%ecompResponseDescription|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/>
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>${eelfErrorLogPattern}</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         <appender name="external"
216                 class="ch.qos.logback.core.rolling.RollingFileAppender">
217                 <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
218                         <level>WARN</level>
219                 </filter>
220                 <file>${logDirectory}/external/external.log</file>
221                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
222                         <fileNamePattern>${logDirectory}/external/external.log.%d{yyyy-MM-dd}
223                         </fileNamePattern>
224                 </rollingPolicy>
225                 <encoder class="org.onap.aai.logging.EcompEncoder">
226                         <pattern>${eelfLogPattern}</pattern>
227                 </encoder>
228         </appender>
229         <logger name="org.onap.aai" level="DEBUG" additivity="false">
230                 <appender-ref ref="asyncDEBUG" />
231                 <appender-ref ref="asyncERROR" />
232                 <appender-ref ref="asyncMETRIC" />
233                 <appender-ref ref="asyncSANE" />
234         </logger>
235         <!-- Spring related loggers -->
236         <logger name="org.springframework" level="WARN" />
237         <logger name="org.springframework.beans" level="WARN" />
238         <logger name="org.springframework.web" level="WARN" />
239         <logger name="com.blog.spring.jms" level="WARN" />
240         <logger name="com.jayway.jsonpath" level="WARN" />
241
242         <!-- AJSC Services (bootstrap services) -->
243         <logger name="org.codehaus.groovy" level="WARN" />
244         <logger name="com.att.scamper" level="WARN" />
245         <logger name="ajsc" level="WARN" />
246         <logger name="ajsc.RouteMgmtService" level="WARN" />
247         <logger name="ajsc.ComputeService" level="WARN" />
248         <logger name="ajsc.VandelayService" level="WARN" />
249         <logger name="ajsc.FilePersistenceService" level="WARN" />
250         <logger name="ajsc.UserDefinedJarService" level="WARN" />
251         <logger name="ajsc.UserDefinedBeansDefService" level="WARN" />
252         <logger name="ajsc.LoggingConfigurationService" level="WARN" />
253
254
255         <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet 
256                 logging) -->
257         <logger name="ajsc.utils" level="WARN" />
258         <logger name="ajsc.utils.DME2Helper" level="WARN" />
259         <logger name="ajsc.filters" level="WARN" />
260         <logger name="ajsc.beans.interceptors" level="WARN" />
261         <logger name="ajsc.restlet" level="WARN" />
262         <logger name="ajsc.servlet" level="WARN" />
263         <logger name="com.att.ajsc" level="WARN" />
264         <logger name="com.att.ajsc.csi.logging" level="WARN" />
265         <logger name="com.att.ajsc.filemonitor" level="WARN" />
266         <logger name="com.att.ajsc.runner" level="WARN" />
267
268         <!-- Other Loggers that may help troubleshoot -->
269         <logger name="net.sf" level="WARN" />
270         <logger name="org.apache.commons.httpclient" level="WARN" />
271         <logger name="org.apache.commons" level="WARN" />
272         <logger name="org.apache.coyote" level="WARN" />
273         <logger name="org.apache.jasper" level="WARN" />
274
275         <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging. 
276                 May aid in troubleshooting) -->
277         <logger name="org.apache.camel" level="WARN" />
278         <logger name="org.apache.cxf" level="WARN" />
279         <logger name="org.apache.camel.processor.interceptor" level="WARN" />
280         <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN" />
281         <logger name="org.apache.cxf.service" level="WARN" />
282         <logger name="org.restlet" level="WARN" />
283         <logger name="org.apache.camel.component.restlet" level="WARN" />
284
285         <!-- logback internals logging -->
286         <logger name="ch.qos.logback.classic" level="WARN" />
287         <logger name="ch.qos.logback.core" level="WARN" />
288
289         <!-- logback jms appenders & loggers definition starts here -->
290         <appender name="auditLogs"
291                 class="ch.qos.logback.core.rolling.RollingFileAppender">
292                 <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
293                 <file>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.log
294                 </file>
295                 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
296                         <fileNamePattern>${logDirectory}/perf-audit/Audit-${lrmRVer}-${lrmRO}-${Pid}.%i.log.zip
297                         </fileNamePattern>
298                         <minIndex>1</minIndex>
299                         <maxIndex>9</maxIndex>
300                 </rollingPolicy>
301                 <triggeringPolicy
302                         class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
303                         <maxFileSize>5MB</maxFileSize>
304                 </triggeringPolicy>
305                 <encoder>
306                         <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
307                 </encoder>
308         </appender>
309         <appender name="perfLogs"
310                 class="ch.qos.logback.core.rolling.RollingFileAppender">
311                 <filter class="ch.qos.logback.classic.filter.ThresholdFilter" />
312                 <file>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.log
313                 </file>
314                 <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
315                         <fileNamePattern>${logDirectory}/perf-audit/Perform-${lrmRVer}-${lrmRO}-${Pid}.%i.log.zip
316                         </fileNamePattern>
317                         <minIndex>1</minIndex>
318                         <maxIndex>9</maxIndex>
319                 </rollingPolicy>
320                 <triggeringPolicy
321                         class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
322                         <maxFileSize>5MB</maxFileSize>
323                 </triggeringPolicy>
324                 <encoder>
325                         <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
326                 </encoder>
327         </appender>
328         <appender name="ASYNC-audit" class="ch.qos.logback.classic.AsyncAppender">
329                 <queueSize>1000</queueSize>
330                 <includeCallerData>true</includeCallerData>
331                 <discardingThreshold>0</discardingThreshold>
332                 <appender-ref ref="Audit-Record-Queue" />
333         </appender>
334         <appender name="ASYNC-perf" class="ch.qos.logback.classic.AsyncAppender">
335                 <queueSize>1000</queueSize>
336                 <includeCallerData>true</includeCallerData>
337                 <discardingThreshold>0</discardingThreshold>
338                 <appender-ref ref="Performance-Tracker-Queue" />
339         </appender>
340         <logger name="AuditRecord" level="INFO" additivity="false">
341                 <appender-ref ref="ASYNC-audit" />
342                 <appender-ref ref="auditLogs" />
343         </logger>
344         <logger name="AuditRecord_DirectCall" level="INFO" additivity="false">
345                 <appender-ref ref="ASYNC-audit" />
346                 <appender-ref ref="auditLogs" />
347         </logger>
348         <logger name="PerfTrackerRecord" level="INFO" additivity="false">
349                 <appender-ref ref="ASYNC-perf" />
350                 <appender-ref ref="perfLogs" />
351         </logger>
352         <!-- logback jms appenders & loggers definition ends here -->
353
354         <logger name="org.onap.aai.interceptors" level="DEBUG"
355                 additivity="false">
356                 <appender-ref ref="asynctranslog" />
357         </logger>
358
359         <logger name="org.onap.aai.interceptors.PreAaiAjscInterceptor" level="DEBUG">
360                 <appender-ref ref="asyncAUDIT"/>
361         </logger>
362
363         <logger name="org.onap.aai.interceptors.PostAaiAjscInterceptor" level="DEBUG">
364                 <appender-ref ref="asyncAUDIT"/>
365         </logger>
366
367         <logger name="org.onap.aai.dmaap" level="DEBUG" additivity="false">
368                 <appender-ref ref="dmaapAAIEventConsumer" />
369                 <appender-ref ref="dmaapAAIEventConsumerDebug" />
370                 <appender-ref ref="dmaapAAIEventConsumerMetric" />
371         </logger>
372
373         <logger name="org.apache" level="WARN" />
374         <logger name="org.zookeeper" level="WARN" />
375         <logger name="com.thinkaurelius" level="WARN" />
376
377         <!-- ============================================================================ -->
378         <!-- General EELF logger -->
379         <!-- ============================================================================ -->
380         <logger name="com.att.eelf" level="WARN" additivity="false">
381                 <appender-ref ref="asyncDEBUG" />
382                 <appender-ref ref="asyncERROR" />
383                 <appender-ref ref="asyncMETRIC" />
384         </logger>
385
386         <root level="DEBUG">
387                 <appender-ref ref="asyncDEBUG" />
388                 <appender-ref ref="asyncERROR" />
389                 <appender-ref ref="asyncMETRIC" />
390                 <appender-ref ref="asyncSANE" />
391                 <appender-ref ref="external" />
392         </root>
393 </configuration>