<?xml version="1.0" encoding="UTF-8"?> | |
<!-- | |
============LICENSE_START======================================================= | |
ECOMP Policy Engine | |
================================================================================ | |
Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. | |
================================================================================ | |
Licensed under the Apache License, Version 2.0 (the "License"); | |
you may not use this file except in compliance with the License. | |
You may obtain a copy of the License at | |
http://www.apache.org/licenses/LICENSE-2.0 | |
Unless required by applicable law or agreed to in writing, software | |
distributed under the License is distributed on an "AS IS" BASIS, | |
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
See the License for the specific language governing permissions and | |
limitations under the License. | |
============LICENSE_END========================================================= | |
--> | |
<configuration debug="true" scan="true" scanPeriod="3 seconds"> | |
<!--<jmxConfigurator /> --> | |
<!-- specify the base path of the log directory --> | |
<property name="logDir" value="/var/log/onap" /> | |
<!-- specify the component name --> | |
<property name="componentName" value="policy" /> | |
<!-- specify the sub component name --> | |
<property name="subComponentName" value="pypdpserver" /> | |
<!-- The directories where logs are written --> | |
<property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" /> | |
<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" /> | |
<!-- log file names --> | |
<property name="errorLogName" value="error" /> | |
<property name="metricsLogName" value="metrics" /> | |
<property name="auditLogName" value="audit" /> | |
<property name="debugLogName" value="debug" /> | |
<property name="queueSize" value="256" /> | |
<property name="maxFileSize" value="50MB" /> | |
<property name="maxHistory" value="30" /> | |
<property name="totalSizeCap" value="10GB" /> | |
<!-- Example evaluator filter applied against console appender --> | |
<appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT"> | |
<encoder> | |
<pattern>${pattern}</pattern> | |
</encoder> | |
</appender> | |
<!-- ============================================================================ --> | |
<!-- EELF Appenders --> | |
<!-- ============================================================================ --> | |
<!-- The EELFAppender is used to record events to the general application | |
log --> | |
<!-- EELF Audit Appender. This appender is used to record audit engine | |
related logging events. The audit logger and appender are specializations | |
of the EELF application root logger and appender. This can be used to segregate | |
Policy engine events from other components, or it can be eliminated to record | |
these events as part of the application root log. --> | |
<appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFAudit"> | |
<file>${logDirectory}/${auditLogName}.log</file> | |
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> | |
<fileNamePattern>${logDirectory}/${auditLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern> | |
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> | |
<maxFileSize>${maxFileSize}</maxFileSize> | |
</timeBasedFileNamingAndTriggeringPolicy> | |
<maxHistory>${maxHistory}</maxHistory> | |
<totalSizeCap>${totalSizeCap}</totalSizeCap> | |
</rollingPolicy> | |
<encoder> | |
<pattern>${pattern}</pattern> | |
</encoder> | |
</appender> | |
<appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFAudit"> | |
<queueSize>${queueSize}</queueSize> | |
<appender-ref ref="EELFAudit" /> | |
</appender> | |
<appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFMetrics"> | |
<file>${logDirectory}/${metricsLogName}.log</file> | |
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> | |
<fileNamePattern>${logDirectory}/${metricsLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern> | |
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> | |
<maxFileSize>${maxFileSize}</maxFileSize> | |
</timeBasedFileNamingAndTriggeringPolicy> | |
<maxHistory>${maxHistory}</maxHistory> | |
<totalSizeCap>${totalSizeCap}</totalSizeCap> | |
</rollingPolicy> | |
<encoder> | |
<!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - | |
%msg%n"</pattern> --> | |
<pattern>${pattern}</pattern> | |
</encoder> | |
</appender> | |
<appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics"> | |
<queueSize>${queueSize}</queueSize> | |
<appender-ref ref="EELFMetrics" /> | |
</appender> | |
<appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFError"> | |
<file>${logDirectory}/${errorLogName}.log</file> | |
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> | |
<fileNamePattern>${logDirectory}/${errorLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern> | |
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> | |
<maxFileSize>${maxFileSize}</maxFileSize> | |
</timeBasedFileNamingAndTriggeringPolicy> | |
<maxHistory>${maxHistory}</maxHistory> | |
<totalSizeCap>${totalSizeCap}</totalSizeCap> | |
</rollingPolicy> | |
<encoder> | |
<pattern>${pattern}</pattern> | |
</encoder> | |
<filter class="ch.qos.logback.classic.filter.ThresholdFilter"> | |
<level>INFO</level> | |
</filter> | |
</appender> | |
<appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFError"> | |
<queueSize>${queueSize}</queueSize> | |
<appender-ref ref="EELFError" /> | |
</appender> | |
<appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELFDebug"> | |
<file>${logDirectory}/${debugLogName}.log</file> | |
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> | |
<fileNamePattern>${logDirectory}/${debugLogName}.%d{yyyy-MM-dd}.%i.log</fileNamePattern> | |
<timeBasedFileNamingAndTriggeringPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedFNATP"> | |
<maxFileSize>${maxFileSize}</maxFileSize> | |
</timeBasedFileNamingAndTriggeringPolicy> | |
<maxHistory>${maxHistory}</maxHistory> | |
<totalSizeCap>${totalSizeCap}</totalSizeCap> | |
</rollingPolicy> | |
<encoder> | |
<pattern>${pattern}</pattern> | |
</encoder> | |
</appender> | |
<appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFDebug"> | |
<queueSize>${queueSize}</queueSize> | |
<appender-ref ref="EELFDebug" /> | |
<includeCallerData>true</includeCallerData> | |
</appender> | |
<!-- ============================================================================ --> | |
<!-- EELF loggers --> | |
<!-- ============================================================================ --> | |
<logger additivity="false" level="info" name="com.att.eelf.audit"> | |
<appender-ref ref="asyncEELFAudit" /> | |
</logger> | |
<logger additivity="false" level="info" name="com.att.eelf.metrics"> | |
<appender-ref ref="asyncEELFMetrics" /> | |
</logger> | |
<logger additivity="false" level="info" name="com.att.eelf.error"> | |
<appender-ref ref="asyncEELFError" /> | |
</logger> | |
<logger additivity="false" level="debug" name="com.att.eelf.debug"> | |
<appender-ref ref="asyncEELFDebug" /> | |
</logger> | |
<root level="INFO"> | |
<appender-ref ref="asyncEELFDebug" /> | |
<appender-ref ref="asyncEELFError" /> | |
</root> | |
</configuration> |