[SDC] Update SDC docker versions to 1.10.1
[oom.git] / kubernetes / sdc / components / sdc-fe / resources / config / logging / logback.xml
1 <?xml version="1.0" encoding="utf-8"?>\r
2 <!--\r
3 # Copyright © 2018 Amdocs, Bell Canada, AT&T, ZTE\r
4 #\r
5 # Licensed under the Apache License, Version 2.0 (the "License");\r
6 # you may not use this file except in compliance with the License.\r
7 # You may obtain a copy of the License at\r
8 #\r
9 #       http://www.apache.org/licenses/LICENSE-2.0\r
10 #\r
11 # Unless required by applicable law or agreed to in writing, software\r
12 # distributed under the License is distributed on an "AS IS" BASIS,\r
13 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
14 # See the License for the specific language governing permissions and\r
15 # limitations under the License.\r
16 -->\r
17 \r
18 <configuration scan="true" scanPeriod="3 seconds">\r
19     <property name="logDir" value="/var/log/onap" />\r
20     <property name="componentName" scope="system" value="sdc"></property>\r
21     <property name="subComponentName" scope="system" value="sdc-fe"></property>\r
22     <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />\r
23     <property file="${config.home}/catalog-fe/configuration.yaml" />\r
24     <property name="enable-all-log" scope="context" value="false" />\r
25     <!--  log file names -->\r
26     <property name="errorLogName" value="error" />\r
27     <property name="metricsLogName" value="metrics" />\r
28     <property name="auditLogName" value="audit" />\r
29     <property name="debugLogName" value="debug" />\r
30     <property name="transactionLogName" value="transaction" />\r
31     <property name="allLogName" value="all" />\r
32     <property name="queueSize" value="256" />\r
33     <property name="maxFileSize" value="50MB" />\r
34     <property name="maxHistory" value="30" />\r
35     <property name="totalSizeCap" value="10GB" />\r
36     <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&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" />\r
37     <!-- All log -->\r
38     <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
39         <then>\r
40             <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ALL_ROLLING">\r
41                 <file>${logDirectory}/${allLogName}.log</file>\r
42                 <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
43                     <fileNamePattern>${logDirectory}/${allLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
44                     <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
45                         <maxFileSize>${maxFileSize}</maxFileSize>\r
46                     </timeBasedFileNamingAndTriggeringPolicy>\r
47                     <maxHistory>${maxHistory}</maxHistory>\r
48                     <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
49                 </rollingPolicy>\r
50                 <encoder>\r
51                     <pattern>${pattern}</pattern>\r
52                 </encoder>\r
53             </appender>\r
54             <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ALL">\r
55                 <appender-ref ref="ALL_ROLLING" />\r
56             </appender>\r
57         </then>\r
58     </if>\r
59     <!-- Error log -->\r
60     <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR_ROLLING">\r
61         <file>${logDirectory}/${errorLogName}.log</file>\r
62         <!-- Audit messages filter - deny audit messages -->\r
63         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
64             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
65                 <marker>AUDIT_MARKER</marker>\r
66             </evaluator>\r
67             <onMismatch>NEUTRAL</onMismatch>\r
68             <onMatch>DENY</onMatch>\r
69         </filter>\r
70         <!-- Transaction messages filter - deny Transaction messages -->\r
71         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
72             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
73                 <marker>TRANSACTION_MARKER</marker>\r
74             </evaluator>\r
75             <onMismatch>NEUTRAL</onMismatch>\r
76             <onMatch>DENY</onMatch>\r
77         </filter>\r
78         <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->\r
79         <filter class="ch.qos.logback.classic.filter.ThresholdFilter">\r
80             <level>INFO</level>\r
81         </filter>\r
82         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
83             <fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
84             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
85                 <maxFileSize>${maxFileSize}</maxFileSize>\r
86             </timeBasedFileNamingAndTriggeringPolicy>\r
87             <maxHistory>${maxHistory}</maxHistory>\r
88             <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
89         </rollingPolicy>\r
90         <encoder>\r
91             <pattern>${pattern}</pattern>\r
92         </encoder>\r
93     </appender>\r
94     <!-- Debug log -->\r
95     <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG_ROLLING">\r
96         <file>${logDirectory}/${debugLogName}.log</file>\r
97         <!-- No need to deny audit messages - they are INFO only, will be denied\r
98                         anyway -->\r
99         <!-- Transaction messages filter - deny Transaction messages, there are\r
100                         some DEBUG level messages among them -->\r
101         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
102             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
103                 <marker>TRANSACTION_MARKER</marker>\r
104             </evaluator>\r
105             <onMismatch>NEUTRAL</onMismatch>\r
106             <onMatch>DENY</onMatch>\r
107         </filter>\r
108         <!-- accept DEBUG and TRACE level -->\r
109         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
110             <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">\r
111                 <expression>e.level.toInt() &lt;= DEBUG.toInt()</expression>\r
112             </evaluator>\r
113             <OnMismatch>DENY</OnMismatch>\r
114             <OnMatch>NEUTRAL</OnMatch>\r
115         </filter>\r
116         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
117             <fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
118             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
119                 <maxFileSize>${maxFileSize}</maxFileSize>\r
120             </timeBasedFileNamingAndTriggeringPolicy>\r
121             <maxHistory>${maxHistory}</maxHistory>\r
122             <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
123         </rollingPolicy>\r
124         <encoder>\r
125             <pattern>${pattern}</pattern>\r
126         </encoder>\r
127     </appender>\r
128     <!-- Audit log -->\r
129     <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT_ROLLING">\r
130         <file>${logDirectory}/${auditLogName}.log</file>\r
131         <!-- Audit messages filter - accept audit messages -->\r
132         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
133             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
134                 <marker>AUDIT_MARKER</marker>\r
135             </evaluator>\r
136             <onMismatch>DENY</onMismatch>\r
137             <onMatch>ACCEPT</onMatch>\r
138         </filter>\r
139         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
140             <fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
141             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
142                 <maxFileSize>${maxFileSize}</maxFileSize>\r
143             </timeBasedFileNamingAndTriggeringPolicy>\r
144             <maxHistory>${maxHistory}</maxHistory>\r
145             <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
146         </rollingPolicy>\r
147         <encoder>\r
148             <pattern>${pattern}</pattern>\r
149         </encoder>\r
150     </appender>\r
151     <!-- SdncTransaction log -->\r
152     <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="TRANSACTION_ROLLING">\r
153         <file>${logDirectory}/${transactionLogName}.log</file>\r
154         <!-- Transaction messages filter - accept audit messages -->\r
155         <filter class="ch.qos.logback.core.filter.EvaluatorFilter">\r
156             <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">\r
157                 <marker>TRANSACTION_MARKER</marker>\r
158             </evaluator>\r
159             <onMismatch>DENY</onMismatch>\r
160             <onMatch>ACCEPT</onMatch>\r
161         </filter>\r
162         <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">\r
163             <fileNamePattern>${logDirectory}/${transactionLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern>\r
164             <timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP">\r
165                 <maxFileSize>${maxFileSize}</maxFileSize>\r
166             </timeBasedFileNamingAndTriggeringPolicy>\r
167             <maxHistory>${maxHistory}</maxHistory>\r
168             <totalSizeCap>${totalSizeCap}</totalSizeCap>\r
169         </rollingPolicy>\r
170         <encoder>\r
171             <pattern>${pattern}</pattern>\r
172         </encoder>\r
173     </appender>\r
174     <!-- Asynchronicity Configurations -->\r
175     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_DEBUG">\r
176         <queueSize>${queueSize}</queueSize>\r
177         <appender-ref ref="DEBUG_ROLLING" />\r
178     </appender>\r
179     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_TRANSACTION">\r
180         <queueSize>${queueSize}</queueSize>\r
181         <appender-ref ref="TRANSACTION_ROLLING" />\r
182     </appender>\r
183     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ERROR">\r
184         <queueSize>${queueSize}</queueSize>\r
185         <appender-ref ref="ERROR_ROLLING" />\r
186     </appender>\r
187     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_AUDIT">\r
188         <queueSize>${queueSize}</queueSize>\r
189         <appender-ref ref="AUDIT_ROLLING" />\r
190     </appender>\r
191     <root level="INFO">\r
192         <appender-ref ref="ASYNC_ERROR" />\r
193         <appender-ref ref="ASYNC_DEBUG" />\r
194         <appender-ref ref="ASYNC_AUDIT" />\r
195         <appender-ref ref="ASYNC_TRANSACTION" />\r
196         <if condition='property("enable-all-log").equalsIgnoreCase("true")'>\r
197             <then>\r
198                 <appender-ref ref="ALL_ROLLING" />\r
199             </then>\r
200         </if>\r
201     </root>\r
202     <logger level="INFO" name="org.openecomp.sdc" />\r
203 </configuration>\r