5c8894300fc6c098bfbe9e26d8f3eb7e2639da6a
[so.git] / packages / docker / src / main / docker / docker-files / configs / logging / logback-spring.xml
1 <!-- ============LICENSE_START======================================================= 
2     ECOMP MSO ================================================================================ 
3     Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. ================================================================================ 
4     Licensed under the Apache License, Version 2.0 (the "License"); you may not 
5     use this file except in compliance with the License. You may obtain a copy 
6     of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required 
7     by applicable law or agreed to in writing, software distributed under the 
8     License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS 
9     OF ANY KIND, either express or implied. See the License for the specific 
10     language governing permissions and limitations under the License. ============LICENSE_END========================================================= -->
11
12 <configuration scan="true" debug="false">
13     <contextListener class="org.onap.so.logger.LoggerStartupListener" />
14     <include resource="org/springframework/boot/logging/logback/base.xml" />
15
16     <property name="queueSize" value="256" />
17     <property name="maxFileSize" value="200MB" />
18     <property name="maxHistory" value="30" />
19     <property name="totalSizeCap" value="10GB" />
20
21     <!-- log file names -->
22     <property name="errorLogName" value="error" />
23     <property name="metricsLogName" value="metrics" />
24     <property name="auditLogName" value="audit" />
25     <property name="debugLogName" value="debug" />
26     <property name="saneLogName" value="sane" />
27
28     <property name="errorPattern"
29         value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" />
30
31     <property name="auditPattern"
32         value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||||||%msg%n" />
33
34     <property name="metricPattern"
35         value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread||%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{Timer}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|||||%msg%n" />
36
37     <property name="defaultPattern"
38         value="%nopexception%logger
39                 \t%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX,UTC}
40                 \t%level
41                 \t%replace(%replace(%message){'\t','\\\\t'}){'\n','\\\\n'}
42                 \t%replace(%replace(%mdc){'\t','\\\\t'}){'\n','\\\\n'}
43                 \t%replace(%replace(%rootException){'\t','\\\\t'}){'\n','\\\\n'}
44                 \t%replace(%replace(%marker){'\t','\\\\t'}){'\n','\\\\n'}
45                 \t%thread
46                 \t%n" />
47
48     <appender name="Audit"
49         class="ch.qos.logback.core.rolling.RollingFileAppender">
50         <file>${logs_dir:-.}/${auditLogName}.log</file>
51         <rollingPolicy
52             class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
53             <fileNamePattern>${logs_dir:-.}/${auditLogName}.%d{yyyy-MM-dd}.%i.log.zip
54             </fileNamePattern>
55             <maxFileSize>${maxFileSize}</maxFileSize>
56             <maxHistory>${maxHistory}</maxHistory>
57             <totalSizeCap>${totalSizeCap}</totalSizeCap>
58         </rollingPolicy>
59         <encoder>
60             <pattern>${auditPattern}</pattern>
61         </encoder>
62     </appender>
63
64     <appender name="asyncAudit" class="ch.qos.logback.classic.AsyncAppender">
65         <queueSize>256</queueSize>
66         <appender-ref ref="Audit" />
67     </appender>
68
69     <appender name="Metric"
70         class="ch.qos.logback.core.rolling.RollingFileAppender">
71         <file>${logs_dir:-.}/${metricsLogName}.log</file>
72         <rollingPolicy
73             class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
74             <fileNamePattern>${logs_dir:-.}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log.zip
75             </fileNamePattern>
76             <maxFileSize>${maxFileSize}</maxFileSize>
77             <maxHistory>${maxHistory}</maxHistory>
78             <totalSizeCap>${totalSizeCap}</totalSizeCap>
79         </rollingPolicy>
80         <encoder>
81             <pattern>${metricPattern}</pattern>
82         </encoder>
83     </appender>
84
85
86     <appender name="asyncMetric" class="ch.qos.logback.classic.AsyncAppender">
87         <queueSize>256</queueSize>
88         <appender-ref ref="Metric" />
89     </appender>
90
91     <appender name="Error"
92         class="ch.qos.logback.core.rolling.RollingFileAppender">
93         <filter class="ch.qos.logback.classic.filter.LevelFilter">
94             <level>ERROR</level>
95             <onMatch>ACCEPT</onMatch>
96             <onMismatch>DENY</onMismatch>
97         </filter>
98         <file>${logs_dir:-.}/${errorLogName}.log</file>
99         <rollingPolicy
100             class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
101             <fileNamePattern>${logs_dir:-.}/${errorLogName}.%d{yyyy-MM-dd}.%i.log.zip
102             </fileNamePattern>
103             <maxFileSize>${maxFileSize}</maxFileSize>
104             <maxHistory>${maxHistory}</maxHistory>
105             <totalSizeCap>${totalSizeCap}</totalSizeCap>
106         </rollingPolicy>
107         <encoder>
108             <pattern>${errorPattern}</pattern>
109         </encoder>
110     </appender>
111
112     <appender name="asyncError" class="ch.qos.logback.classic.AsyncAppender">
113         <queueSize>256</queueSize>
114         <appender-ref ref="Error" />
115     </appender>
116
117     <appender name="Debug"
118         class="ch.qos.logback.core.rolling.RollingFileAppender">
119         <file>${logs_dir:-.}/${debugLogName}.log</file>
120         <rollingPolicy
121             class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
122             <fileNamePattern>${logs_dir:-.}/${debugLogName}.%d{yyyy-MM-dd}.%i.log.zip
123             </fileNamePattern>
124             <maxFileSize>${maxFileSize}</maxFileSize>
125             <maxHistory>${maxHistory}</maxHistory>
126             <totalSizeCap>${totalSizeCap}</totalSizeCap>
127         </rollingPolicy>
128         <encoder>
129             <pattern>${defaultPattern}</pattern>
130         </encoder>
131     </appender>
132
133     <appender name="asyncDebug" class="ch.qos.logback.classic.AsyncAppender">
134         <queueSize>256</queueSize>
135         <appender-ref ref="Debug" />
136         <includeCallerData>true</includeCallerData>
137     </appender>
138
139     <!-- Spring related loggers -->
140     <logger name="org.springframework" level="WARN" />
141
142     <!-- Camunda related loggers -->
143     <logger name="org.camunda.bpm.engine.jobexecutor.level" level="WARN" />
144     <logger
145         name="org.camunda.bpm.engine.impl.persistence.entity.JobEntity.level"
146         level="WARN" />
147
148     <logger name="db.migration" level="DEBUG" />
149     <logger name="org.apache.wire" level="DEBUG" />
150     <logger name="org.onap" level="DEBUG" />
151     <logger name="com.att.ecomp" level="DEBUG" />
152     <logger name="org.apache.cxf" level="INFO" />
153
154     <logger name="AUDIT" level="INFO" additivity="false">
155         <appender-ref ref="asyncAudit" />
156     </logger>
157
158     <logger name="METRIC" level="INFO" additivity="false">
159         <appender-ref ref="asyncMetric" />
160     </logger>
161
162     <root level="WARN">
163         <appender-ref ref="asyncDebug" />
164         <appender-ref ref="asyncError" />
165     </root>
166
167 </configuration>