| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| ============LICENSE_START========================================== |
| org.onap.music |
| =================================================================== |
| Copyright (c) 2017 AT&T Intellectual Property |
| =================================================================== |
| 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 scan="true" scanPeriod="3 seconds"> |
| <!--<jmxConfigurator /> --> |
| <!-- directory path for all other type logs --> |
| <property name="logDir" value="/opt/app/music/logs" /> |
| |
| <!-- directory path for debugging type logs --> |
| <property name="debugDir" value="debug-logs" /> |
| |
| <!-- specify the component name --> |
| <!-- <property name="componentName" value="EELF"></property> --> |
| <property name="componentName" value="MUSIC"></property> |
| |
| <!-- log file names --> |
| <property name="generalLogName" value="music" /> |
| <property name="securityLogName" value="security" /> |
| <property name="errorLogName" value="error" /> |
| <property name="metricsLogName" value="metrics" /> |
| <property name="auditLogName" value="audit" /> |
| <property name="debugLogName" value="debug" /> |
| <property name="defaultPattern" value="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n" /> |
| <!-- <property name="applicationLoggerPattern" value="%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %msg%n" /> --> |
| <property name="applicationLoggerPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5level %X{keyspace} [transactionId:%X{transactionId}] - %msg%n" /> |
| <property name="auditLoggerPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" /> |
| <property name="metricsLoggerPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVirtualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| %msg%n" /> |
| <!-- <property name="errorLoggerPattern" value= "%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %msg%n " /> --> |
| <property name="errorLoggerPattern" value="%d{yyyy-MM-dd HH:mm:ss} %-5level %X{keyspace} - %msg%n" /> |
| <property name="debugLoggerPattern" value="%date{ISO8601,UTC}|%X{RequestId}| %msg%n" ></property> |
| <property name="logDirectory" value="${logDir}/${componentName}" /> |
| <property name="debugLogDirectory" value="${debugDir}/${componentName}" /> |
| <!-- Example evaluator filter applied against console appender --> |
| <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> |
| <!-- <encoder> |
| <pattern>${defaultPattern}</pattern> |
| </encoder> --> |
| <!-- <filter class="org.onap.music.eelf.logging.CustomLoggingFilter" />--> |
| <encoder> |
| <pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %X{keyspace} %msg%n</pattern> |
| </encoder> |
| </appender> |
| |
| <!-- ============================================================================ --> |
| <!-- EELF Appenders --> |
| <!-- ============================================================================ --> |
| |
| <appender name="EELF" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/${generalLogName}.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern> |
| <maxFileSize>1GB</maxFileSize> |
| <maxHistory>5</maxHistory> |
| <totalSizeCap>5GB</totalSizeCap> |
| </rollingPolicy> |
| <encoder> |
| <pattern>${applicationLoggerPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>256</queueSize> |
| <includeCallerData>true</includeCallerData> |
| <appender-ref ref="EELF" /> |
| </appender> |
| |
| <!-- Sift Appender --> |
| <appender name="KSEELF" class="ch.qos.logback.classic.sift.SiftingAppender"> |
| <!-- <discriminator class="org.onap.music.eelf.logging.AuxDiscriminator"> --> |
| <discriminator> |
| <key>keyspace</key> |
| <defaultValue>unknown</defaultValue> |
| </discriminator> |
| <sift> |
| <appender name="EELFSift" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/${generalLogName}-keyspace.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/${generalLogName}-${keyspace}.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern> |
| <maxHistory>30</maxHistory> |
| </rollingPolicy> |
| <encoder> |
| <pattern>${applicationLoggerPattern}</pattern> |
| </encoder> |
| </appender> |
| </sift> |
| </appender> |
| |
| <appender name="asyncKSEELF" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>256</queueSize> |
| <includeCallerData>true</includeCallerData> |
| <appender-ref ref="KSEELF" /> |
| </appender> |
| |
| |
| |
| |
| <!-- <appender name="EELF" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/${generalLogName}.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/${generalLogName}.%d{yyyy-MM-dd}.%i.log.zip</fileNamePattern> |
| <maxFileSize>1GB</maxFileSize> |
| <maxHistory>5</maxHistory> |
| <totalSizeCap>5GB</totalSizeCap> |
| </rollingPolicy> |
| <encoder> |
| <pattern>${applicationLoggerPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>256</queueSize> |
| <includeCallerData>true</includeCallerData> |
| <appender-ref ref="EELF" /> |
| </appender> --> |
| |
| <!-- EELF Security Appender. This appender is used to record security events |
| to the security log file. Security events are separate from other loggers |
| in EELF so that security log records can be captured and managed in a secure |
| way separate from the other logs. This appender is set to never discard any |
| events. --> |
| <appender name="EELFSecurity" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/${securityLogName}.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> |
| <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip</fileNamePattern> |
| <minIndex>1</minIndex> |
| <maxIndex>9</maxIndex> |
| </rollingPolicy> |
| <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> |
| <maxFileSize>5MB</maxFileSize> |
| </triggeringPolicy> |
| <encoder> |
| <pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread] %-5level %logger{36} - %msg%n </pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>256</queueSize> |
| <discardingThreshold>0</discardingThreshold> |
| <appender-ref ref="EELFSecurity" /> |
| </appender> |
| |
| |
| |
| |
| <!-- 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 name="EELFAudit" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/${auditLogName}.log</file> |
| <rollingPolicy |
| class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> |
| <fileNamePattern>${logDirectory}/${auditLogName}.%i.log.zip</fileNamePattern> |
| <minIndex>1</minIndex> |
| <maxIndex>9</maxIndex> |
| </rollingPolicy> |
| <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> |
| <maxFileSize>5MB</maxFileSize> |
| </triggeringPolicy> |
| <encoder> |
| <pattern>${auditLoggerPattern}</pattern> |
| </encoder> |
| </appender> |
| <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>256</queueSize> |
| <appender-ref ref="EELFAudit" /> |
| </appender> |
| |
| <appender name="EELFMetrics" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/${metricsLogName}.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> |
| <fileNamePattern>${logDirectory}/${metricsLogName}.%i.log.zip |
| </fileNamePattern> |
| <minIndex>1</minIndex> |
| <maxIndex>9</maxIndex> |
| </rollingPolicy> |
| <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> |
| <maxFileSize>5MB</maxFileSize> |
| </triggeringPolicy> |
| <encoder> |
| <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n"</pattern> --> |
| <pattern>${metricsLoggerPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| |
| <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>256</queueSize> |
| <appender-ref ref="EELFMetrics"/> |
| </appender> |
| |
| <appender name="EELFError" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/${errorLogName}.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> |
| <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip</fileNamePattern> |
| <minIndex>1</minIndex> |
| <maxIndex>9</maxIndex> |
| </rollingPolicy> |
| <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> |
| <maxFileSize>5MB</maxFileSize> |
| </triggeringPolicy> |
| <encoder> |
| <pattern>${errorLoggerPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>256</queueSize> |
| <appender-ref ref="EELFError"/> |
| </appender> |
| |
| <appender name="EELFDebug" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${debugLogDirectory}/${debugLogName}.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy"> |
| <fileNamePattern>${debugLogDirectory}/${debugLogName}.%i.log.zip</fileNamePattern> |
| <minIndex>1</minIndex> |
| <maxIndex>9</maxIndex> |
| </rollingPolicy> |
| <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"> |
| <maxFileSize>5MB</maxFileSize> |
| </triggeringPolicy> |
| <encoder> |
| <pattern>${debugLoggerPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>256</queueSize> |
| <appender-ref ref="EELFDebug" /> |
| <includeCallerData>true</includeCallerData> |
| </appender> |
| |
| |
| <!-- ============================================================================ --> |
| <!-- EELF loggers --> |
| <!-- ============================================================================ --> |
| <logger name="com.att.eelf" level="{{.Values.logback.applicationLogLevel}}" additivity="false"> |
| <appender-ref ref="asyncEELF" /> |
| <appender-ref ref="asyncKSEELF" /> |
| </logger> |
| |
| <logger name="com.att.eelf.security" level="{{.Values.logback.securityLogLevel}}" additivity="false"> |
| <appender-ref ref="asyncEELFSecurity" /> |
| </logger> |
| |
| |
| <logger name="com.att.eelf.audit" level="{{.Values.logback.auditLogLevel}}" additivity="false"> |
| <appender-ref ref="asyncEELFAudit" /> |
| </logger> |
| |
| <logger name="com.att.eelf.metrics" level="{{.Values.logback.metricsLogLevel}}" additivity="false"> |
| <appender-ref ref="asyncEELFMetrics" /> |
| </logger> |
| |
| |
| <logger name="com.att.eelf.error" level="{{.Values.logback.errorLogLevel}}" additivity="false"> |
| <appender-ref ref="asyncEELFError" /> |
| </logger> |
| |
| <logger name="com.att.eelf.debug" level="debug" additivity="false"> |
| <appender-ref ref="asyncEELFDebug" /> |
| |
| </logger> |
| |
| <!-- Springboot??? --> |
| <!-- <logger name="org.springframework.web" level="DEBUG"> |
| <appender-ref ref="asyncEELF" /> |
| </logger> --> |
| |
| <root level="{{.Values.logback.rootLogLevel}}"> |
| <appender-ref ref="asyncEELF" /> |
| <appender-ref ref="asyncKSEELF" /> |
| <appender-ref ref="STDOUT" /> |
| </root> |
| |
| <!-- Conductor Specific additions to squash WARNING and INFO --> |
| <logger name="com.datastax.driver.core.Cluster" level="ERROR"/> |
| <logger name="org.onap.music.main.MusicCore" level="ERROR"/> |
| </configuration> |
| |