Creating package & docker image of policy/pap
[policy/pap.git] / packages / policy-pap-tarball / src / main / resources / etc / logback.xml
1 <!--
2   ============LICENSE_START=======================================================
3    Copyright (C) 2019 Nordix Foundation.
4   ================================================================================
5   Licensed under the Apache License, Version 2.0 (the "License");
6   you may not use this file except in compliance with the License.
7   You may obtain a copy of the License at
8
9        http://www.apache.org/licenses/LICENSE-2.0
10
11   Unless required by applicable law or agreed to in writing, software
12   distributed under the License is distributed on an "AS IS" BASIS,
13   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   See the License for the specific language governing permissions and
15   limitations under the License.
16
17   SPDX-License-Identifier: Apache-2.0
18   ============LICENSE_END=========================================================
19 -->
20
21 <configuration scan="true" scanPeriod="30 seconds" debug="false">
22
23     <property name="logDir" value="${POLICY_LOGS}" />
24
25     <property name="errorLog" value="error" />
26     <property name="debugLog" value="debug" />
27     <property name="networkLog" value="network" />
28
29     <property name="metricLog" value="metric" />
30     <property name="transactionLog" value="audit" />
31
32     <property name="debugPattern"
33         value="[%d{yyyy-MM-dd'T'HH:mm:ss.SSS+00:00, UTC}|%level|%logger{0}|%thread] %msg%n" />
34     <property name="errorPattern" value="${debugPattern}" />
35     <property name="networkPattern" value="[%d{yyyy-MM-dd'T'HH:mm:ss.SSS+00:00, UTC}|%t]%m%n" />
36
37     <property name="metricPattern"
38         value="%X{RequestID}|%X{InvocationID}|%X{ServiceName}|%X{PartnerName}|%X{BeginTimestamp}|%X{EndTimestamp}|%X{ElapsedTime}|%X{ServiceInstanceID}|%X{VirtualServerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%X{Severity}|%X{TargetEntity}|%X{TargetServiceName}|%X{Server}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ProcessKey}|%X{RemoteHost}|%X{AlertSeverity}|%X{TargetVirtualEntity}|%level|%thread| %msg%n" />
39     <property name="transactionPattern" value="${metricPattern}" />
40
41     <appender name="ErrorOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
42         <file>${logDir}/${errorLog}.log</file>
43         <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
44             <fileNamePattern>${logDir}/${errorLog}.%d{yyyy-MM-dd}.%i.log.zip
45             </fileNamePattern>
46             <maxFileSize>50MB</maxFileSize>
47             <maxHistory>30</maxHistory>
48             <totalSizeCap>10GB</totalSizeCap>
49         </rollingPolicy>
50         <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
51             <level>WARN</level>
52         </filter>
53         <encoder>
54             <pattern>${errorPattern}</pattern>
55         </encoder>
56     </appender>
57
58     <appender name="AsyncErrorOut" class="ch.qos.logback.classic.AsyncAppender">
59         <appender-ref ref="ErrorOut" />
60     </appender>
61
62     <appender name="DebugOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
63         <file>${logDir}/${debugLog}.log</file>
64         <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
65             <fileNamePattern>${logDir}/${debugLog}.%d{yyyy-MM-dd}.%i.log.zip
66             </fileNamePattern>
67             <maxFileSize>50MB</maxFileSize>
68             <maxHistory>30</maxHistory>
69             <totalSizeCap>10GB</totalSizeCap>
70         </rollingPolicy>
71         <encoder>
72             <pattern>${debugPattern}</pattern>
73         </encoder>
74     </appender>
75
76     <appender name="AsyncDebugOut" class="ch.qos.logback.classic.AsyncAppender">
77         <appender-ref ref="DebugOut" />
78     </appender>
79
80     <appender name="NetworkOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
81         <file>${logDir}/${networkLog}.log</file>
82         <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
83             <fileNamePattern>${logDir}/${networkLog}.%d{yyyy-MM-dd}.%i.log.zip
84             </fileNamePattern>
85             <maxFileSize>50MB</maxFileSize>
86             <maxHistory>30</maxHistory>
87             <totalSizeCap>10GB</totalSizeCap>
88         </rollingPolicy>
89         <encoder>
90             <pattern>${networkPattern}</pattern>
91         </encoder>
92     </appender>
93
94     <appender name="AsyncNetworkOut" class="ch.qos.logback.classic.AsyncAppender">
95         <appender-ref ref="NetworkOut" />
96     </appender>
97
98     <appender name="MetricOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
99         <file>${logDir}/${metricLog}.log</file>
100         <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
101             <fileNamePattern>${logDir}/${metricLog}.%d{yyyy-MM-dd}.%i.log.zip
102             </fileNamePattern>
103             <maxFileSize>50MB</maxFileSize>
104             <maxHistory>30</maxHistory>
105             <totalSizeCap>10GB</totalSizeCap>
106         </rollingPolicy>
107         <encoder>
108             <pattern>${metricPattern}</pattern>
109         </encoder>
110     </appender>
111
112     <appender name="AsyncMetricOut" class="ch.qos.logback.classic.AsyncAppender">
113         <appender-ref ref="MetricOut" />
114     </appender>
115
116     <appender name="TransactionOut" class="ch.qos.logback.core.rolling.RollingFileAppender">
117         <file>${logDir}/${transactionLog}.log</file>
118         <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
119             <fileNamePattern>${logDir}/${transactionLog}.%d{yyyy-MM-dd}.%i.log.zip
120             </fileNamePattern>
121             <maxFileSize>50MB</maxFileSize>
122             <maxHistory>30</maxHistory>
123             <totalSizeCap>10GB</totalSizeCap>
124         </rollingPolicy>
125         <encoder>
126             <pattern>${transactionPattern}</pattern>
127         </encoder>
128     </appender>
129
130     <appender name="AsyncTransactionOut" class="ch.qos.logback.classic.AsyncAppender">
131         <appender-ref ref="TransactionOut" />
132     </appender>
133
134     <logger name="network" level="INFO" additivity="false">
135         <appender-ref ref="AsyncNetworkOut" />
136     </logger>
137
138     <logger name="org.eclipse.jetty.server.RequestLog" level="info" additivity="false">
139         <appender-ref ref="AsyncNetworkOut" />
140     </logger>
141
142     <root level="INFO">
143         <appender-ref ref="AsyncDebugOut" />
144         <appender-ref ref="AsyncErrorOut" />
145         <appender-ref ref="AsyncMetricOut" />
146         <appender-ref ref="AsyncTransactionOut" />
147     </root>
148
149 </configuration>