Update the log pattern for Portal
[logging-analytics.git] / onap / portal / portal-db / conf / logback.xml
1 <?xml version="1.0" encoding="utf-8"?>
2 <configuration debug="true" scan="true" scanPeriod="3 seconds">
3     <!--
4   Logback files for the ECOMP SDK Application "ecomp_app"
5   are created in directory ${catalina.base}/logs/ecomp_app;
6   e.g., apache-tomcat-8.0.35/logs/ecomp_app/application.log
7   -->
8     <!--<jmxConfigurator /> -->
9     <!--  specify the component name -->
10     <property name="componentName" value="portal"></property>
11     <property name="subComponentName" value="portalDB"></property>
12     <!--  specify the base path of the log directory -->
13     <property name="logDirPrefix" value="/var/log/onap"></property>
14     <!-- The directories where logs are written -->
15     <property name="logDirectory" value="${logDirPrefix}/${componentName}/${subComponentName}" />
16     <!-- Can easily relocate debug logs by modifying this path. -->
17     <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}/${subComponentName}" />
18     <!--  log file names -->
19     <property name="generalLogName" value="application" />
20     <property name="errorLogName" value="error" />
21     <property name="metricsLogName" value="metrics" />
22     <property name="auditLogName" value="audit" />
23     <property name="debugLogName" value="debug" />
24     <!--
25   These loggers are not used in code (yet).
26   <property name="securityLogName" value="security" />
27   <property name="policyLogName" value="policy" />
28   <property name="performanceLogName" value="performance" />
29   <property name="serverLogName" value="server" />
30    -->
31     <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
32     <property name="maxHistory" value="30" />
33     <property name="queueSize" value="256" />
34     <property name="maxFileSize" value="50MB" />
35     <property name="totalSizeCap" value="10GB" />
36     <!-- Example evaluator filter applied against console appender -->
37     <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
38         <encoder>
39             <pattern>${pattern}</pattern>
40         </encoder>
41     </appender>
42     <!-- ============================================================================ -->
43     <!-- EELF Appenders -->
44     <!-- ============================================================================ -->
45     <!-- The EELFAppender is used to record events to the general application
46     log -->
47     <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF">
48         <file>${logDirectory}/${generalLogName}.log</file>
49         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
50             <!-- daily rollover -->
51             <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
52             <!-- keep 30 days' worth of history capped at ${totalSizeCap} total size -->
53             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
54                 <maxFileSize>${maxFileSize}</maxFileSize>
55             </timeBasedFileNamingAndTriggeringPolicy>
56             <maxHistory>${maxHistory}</maxHistory>
57             <totalSizeCap>${totalSizeCap}</totalSizeCap>
58         </rollingPolicy>
59         <encoder>
60             <pattern>${pattern}</pattern>
61         </encoder>
62         <filter class="org.openecomp.fusionapp.util.CustomLoggingFilter" />
63     </appender>
64     <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELF">
65         <queueSize>${queueSize}</queueSize>
66         <!-- Class name is part of caller data -->
67         <includeCallerData>true</includeCallerData>
68         <appender-ref ref="EELF" />
69     </appender>
70     <!-- EELF Security Appender. This appender is used to record security events
71     to the security log file. Security events are separate from other loggers
72     in EELF so that security log records can be captured and managed in a secure
73     way separate from the other logs. This appender is set to never discard any
74     events. -->
75     <!--
76   <appender name="EELFSecurity"
77     class="ch.qos.logback.core.rolling.RollingFileAppender">
78     <file>${logDirectory}/${securityLogName}.log</file>
79     <rollingPolicy
80       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
81       <fileNamePattern>${logDirectory}/${securityLogName}.%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="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">
96     <queueSize>256</queueSize>
97     <discardingThreshold>0</discardingThreshold>
98     <appender-ref ref="EELFSecurity" />
99   </appender>
100    -->
101     <!-- EELF Performance Appender. This appender is used to record performance
102     records. -->
103     <!--
104   <appender name="EELFPerformance"
105     class="ch.qos.logback.core.rolling.RollingFileAppender">
106     <file>${logDirectory}/${performanceLogName}.log</file>
107     <rollingPolicy
108       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
109       <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip
110       </fileNamePattern>
111       <minIndex>1</minIndex>
112       <maxIndex>9</maxIndex>
113     </rollingPolicy>
114     <triggeringPolicy
115       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
116       <maxFileSize>5MB</maxFileSize>
117     </triggeringPolicy>
118     <encoder>
119       <outputPatternAsHeader>true</outputPatternAsHeader>
120       <pattern>${defaultPattern}</pattern>
121     </encoder>
122   </appender>
123   <appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender">
124     <queueSize>256</queueSize>
125     <appender-ref ref="EELFPerformance" />
126   </appender>
127   -->
128     <!-- EELF Server Appender. This appender is used to record Server related
129     logging events. The Server logger and appender are specializations of the
130     EELF application root logger and appender. This can be used to segregate Server
131     events from other components, or it can be eliminated to record these events
132     as part of the application root log. -->
133     <!--
134   <appender name="EELFServer"
135     class="ch.qos.logback.core.rolling.RollingFileAppender">
136     <file>${logDirectory}/${serverLogName}.log</file>
137     <rollingPolicy
138       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
139       <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip
140       </fileNamePattern>
141       <minIndex>1</minIndex>
142       <maxIndex>9</maxIndex>
143     </rollingPolicy>
144     <triggeringPolicy
145       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
146       <maxFileSize>5MB</maxFileSize>
147     </triggeringPolicy>
148     <encoder>
149         <pattern>${defaultPattern}</pattern>
150     </encoder>
151   </appender>
152   <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">
153     <queueSize>256</queueSize>
154     <appender-ref ref="EELFServer" />
155   </appender>
156    -->
157     <!-- EELF Policy Appender. This appender is used to record Policy engine
158     related logging events. The Policy logger and appender are specializations
159     of the EELF application root logger and appender. This can be used to segregate
160     Policy engine events from other components, or it can be eliminated to record
161     these events as part of the application root log. -->
162     <!--
163   <appender name="EELFPolicy"
164     class="ch.qos.logback.core.rolling.RollingFileAppender">
165     <file>${logDirectory}/${policyLogName}.log</file>
166     <rollingPolicy
167       class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
168       <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip
169       </fileNamePattern>
170       <minIndex>1</minIndex>
171       <maxIndex>9</maxIndex>
172     </rollingPolicy>
173     <triggeringPolicy
174       class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
175       <maxFileSize>5MB</maxFileSize>
176     </triggeringPolicy>
177     <encoder>
178         <pattern>${defaultPattern}</pattern>
179     </encoder>
180   </appender>
181   <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">
182     <queueSize>256</queueSize>
183     <appender-ref ref="EELFPolicy" />
184   </appender>
185   -->
186     <!-- EELF Audit Appender. This appender is used to record audit engine
187     related logging events. The audit logger and appender are specializations
188     of the EELF application root logger and appender. This can be used to segregate
189     Policy engine events from other components, or it can be eliminated to record
190     these events as part of the application root log. -->
191     <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit">
192         <file>${logDirectory}/${auditLogName}.log</file>
193         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
194             <!-- daily rollover -->
195             <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
196             <!-- keep 30 days' worth of history capped at ${totalSizeCap} total size -->
197             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
198                 <maxFileSize>${maxFileSize}</maxFileSize>
199             </timeBasedFileNamingAndTriggeringPolicy>
200             <maxHistory>${maxHistory}</maxHistory>
201             <totalSizeCap>${totalSizeCap}</totalSizeCap>
202         </rollingPolicy>
203         <encoder>
204             <pattern>${pattern}</pattern>
205         </encoder>
206     </appender>
207     <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit">
208         <queueSize>${queueSize}</queueSize>
209         <appender-ref ref="EELFAudit" />
210     </appender>
211     <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics">
212         <file>${logDirectory}/${metricsLogName}.log</file>
213         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
214             <!-- daily rollover -->
215             <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
216             <!-- keep 30 days' worth of history capped at ${totalSizeCap} total size -->
217             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
218                 <maxFileSize>${maxFileSize}</maxFileSize>
219             </timeBasedFileNamingAndTriggeringPolicy>
220             <maxHistory>${maxHistory}</maxHistory>
221             <totalSizeCap>${totalSizeCap}</totalSizeCap>
222         </rollingPolicy>
223         <encoder>
224             <pattern>${pattern}</pattern>
225         </encoder>
226     </appender>
227     <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics">
228         <queueSize>${queueSize}</queueSize>
229         <appender-ref ref="EELFMetrics" />
230     </appender>
231     <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError">
232         <file>${logDirectory}/${errorLogName}.log</file>
233         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
234             <!-- daily rollover -->
235             <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
236             <!-- keep 30 days' worth of history capped at ${totalSizeCap} total size -->
237             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
238                 <maxFileSize>${maxFileSize}</maxFileSize>
239             </timeBasedFileNamingAndTriggeringPolicy>
240             <maxHistory>${maxHistory}</maxHistory>
241             <totalSizeCap>${totalSizeCap}</totalSizeCap>
242         </rollingPolicy>
243         <encoder>
244             <pattern>${pattern}</pattern>
245         </encoder>
246     </appender>
247     <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError">
248         <queueSize>${queueSize}</queueSize>
249         <appender-ref ref="EELFError" />
250     </appender>
251     <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug">
252         <file>${debugLogDirectory}/${debugLogName}.log</file>
253         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
254             <!-- daily rollover -->
255             <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
256             <!-- keep 30 days' worth of history capped at ${totalSizeCap} total size -->
257             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
258                 <maxFileSize>${maxFileSize}</maxFileSize>
259             </timeBasedFileNamingAndTriggeringPolicy>
260             <maxHistory>${maxHistory}</maxHistory>
261             <totalSizeCap>${totalSizeCap}</totalSizeCap>
262         </rollingPolicy>
263         <encoder>
264             <pattern>${pattern}</pattern>
265         </encoder>
266     </appender>
267     <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug">
268         <queueSize>${queueSize}</queueSize>
269         <appender-ref ref="EELFDebug" />
270     </appender>
271     <!-- ============================================================================ -->
272     <!--  EELF loggers -->
273     <!-- ============================================================================ -->
274     <logger additivity="false" level="debug" name="com.att.eelf">
275         <appender-ref ref="asyncEELF" />
276     </logger>
277     <!--
278   <logger name="com.att.eelf.security" level="info" additivity="false">
279     <appender-ref ref="asyncEELFSecurity" />
280   </logger>
281   <logger name="com.att.eelf.perf" level="info" additivity="false">
282     <appender-ref ref="asyncEELFPerformance" />
283   </logger>
284   <logger name="com.att.eelf.server" level="info" additivity="false">
285    <appender-ref ref="asyncEELFServer" />
286   </logger>
287   <logger name="com.att.eelf.policy" level="info" additivity="false">
288     <appender-ref ref="asyncEELFPolicy" />
289   </logger>
290   -->
291     <logger additivity="false" level="info" name="com.att.eelf.audit">
292         <appender-ref ref="asyncEELFAudit" />
293     </logger>
294     <logger additivity="false" level="info" name="com.att.eelf.metrics">
295         <appender-ref ref="asyncEELFMetrics" />
296     </logger>
297     <logger additivity="false" level="info" name="com.att.eelf.error">
298         <appender-ref ref="asyncEELFError" />
299     </logger>
300     <logger additivity="false" level="debug" name="com.att.eelf.debug">
301         <appender-ref ref="asyncEELFDebug" />
302     </logger>
303     <root level="DEBUG">
304         <appender-ref ref="asyncEELF" />
305     </root>
306 </configuration>