[LOG] Add canonicalization for SO logs
[logging-analytics.git] / onap / so / conf / logback.appc.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <configuration scan="true" scanPeriod="3 seconds" debug="true">
3    <property name="logDir" value="/var/log/onap" />
4    <property name="componentName" value="so" />
5    <property name="subComponentName" value="appcAdapter" />
6    <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
7    <property name="pattern" value="%d{&amp;quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&amp;quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
8    <!--  log file names -->
9    <property name="errorLogName" value="error" />
10    <property name="metricsLogName" value="metrics" />
11    <property name="auditLogName" value="audit" />
12    <property name="debugLogName" value="debug" />
13    <property name="queueSize" value="256" />
14    <property name="maxFileSize" value="50MB" />
15    <property name="maxHistory" value="30" />
16    <property name="totalSizeCap" value="10GB" />
17    <!-- EELF Appenders -->
18    <appender name="EELFAudit" class="ch.qos.logback.core.rolling.RollingFileAppender">
19       <file>${logDirectory}/${auditLogName}.log</file>
20       <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
21          <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
22          <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
23             <maxFileSize>${maxFileSize}</maxFileSize>
24          </timeBasedFileNamingAndTriggeringPolicy>
25          <maxHistory>${maxHistory}</maxHistory>
26          <totalSizeCap>${totalSizeCap}</totalSizeCap>
27       </rollingPolicy>
28       <encoder>
29          <pattern>${pattern}</pattern>
30       </encoder>
31    </appender>
32    <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">
33       <queueSize>${queueSize}</queueSize>
34       <appender-ref ref="EELFAudit" />
35    </appender>
36    <appender name="EELFMetrics" class="ch.qos.logback.core.rolling.RollingFileAppender">
37       <file>${logDirectory}/${metricsLogName}.log</file>
38       <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
39          <fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
40          <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
41             <maxFileSize>${maxFileSize}</maxFileSize>
42          </timeBasedFileNamingAndTriggeringPolicy>
43          <maxHistory>${maxHistory}</maxHistory>
44          <totalSizeCap>${totalSizeCap}</totalSizeCap>
45       </rollingPolicy>
46       <encoder>
47          <pattern>${pattern}</pattern>
48       </encoder>
49    </appender>
50    <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">
51       <queueSize>${queueSize}</queueSize>
52       <appender-ref ref="EELFMetrics" />
53    </appender>
54    <appender name="EELFError" class="ch.qos.logback.core.rolling.RollingFileAppender">
55       <file>${logDirectory}/${errorLogName}.log</file>
56       <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
57          <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
58          <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
59             <maxFileSize>${maxFileSize}</maxFileSize>
60          </timeBasedFileNamingAndTriggeringPolicy>
61          <maxHistory>${maxHistory}</maxHistory>
62          <totalSizeCap>${totalSizeCap}</totalSizeCap>
63       </rollingPolicy>
64       <encoder>
65          <pattern>${pattern}</pattern>
66       </encoder>
67       <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
68          <level>INFO</level>
69       </filter>
70    </appender>
71    <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">
72       <queueSize>${queueSize}</queueSize>
73       <appender-ref ref="EELFError" />
74    </appender>
75    <appender name="EELFDebug" class="ch.qos.logback.core.rolling.RollingFileAppender">
76       <file>${logDirectory}/${debugLogName}.log</file>
77       <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
78          <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
79          <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">
80             <maxFileSize>${maxFileSize}</maxFileSize>
81          </timeBasedFileNamingAndTriggeringPolicy>
82          <maxHistory>${maxHistory}</maxHistory>
83          <totalSizeCap>${totalSizeCap}</totalSizeCap>
84       </rollingPolicy>
85       <encoder>
86          <pattern>${pattern}</pattern>
87       </encoder>
88    </appender>
89    <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">
90       <queueSize>${queueSize}</queueSize>
91       <appender-ref ref="EELFDebug" />
92       <includeCallerData>true</includeCallerData>
93    </appender>
94    <!--  EELF loggers -->
95    <logger name="com.att.eelf.audit" level="info" additivity="false">
96       <appender-ref ref="asyncEELFAudit" />
97    </logger>
98    <logger name="com.att.eelf.metrics" level="info" additivity="false">
99       <appender-ref ref="asyncEELFMetrics" />
100    </logger>
101    <logger name="com.att.eelf.error" level="info" additivity="false">
102       <appender-ref ref="asyncEELFError" />
103    </logger>
104    <logger name="com.att.eelf.debug" level="debug" additivity="false">
105       <appender-ref ref="asyncEELFDebug" />
106    </logger>
107    <root level="INFO">
108       <appender-ref ref="asyncEELFDebug" />
109    </root>
110 </configuration>