| <!-- |
| |
| ============LICENSE_START======================================================= |
| org.onap.aai |
| ================================================================================ |
| Copyright © 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========================================================= |
| |
| ECOMP is a trademark and service mark of AT&T Intellectual Property. |
| |
| --> |
| <configuration scan="true" scanPeriod="60 seconds" debug="false"> |
| <statusListener class="ch.qos.logback.core.status.NopStatusListener"/> |
| |
| <property resource="application.properties"/> |
| |
| <property name="namespace" value="aai-schema-service"/> |
| |
| <property name="AJSC_HOME" value="${AJSC_HOME:-.}"/> |
| <property name="logDirectory" value="${AJSC_HOME}/logs"/> |
| <!-- Old patterns |
| <property name="eelfLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%ecompServiceName|%X{partnerName}|%ecompStatusCode|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/> |
| <property name="eelfAuditLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%ecompServiceName|%X{partnerName}|%ecompStatusCode|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n|\r\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/> |
| <property name="eelfMetricLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%ecompServiceName|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompStatusCode|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{targetVirtualEntity}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/> |
| //<property name="eelfErrorLogPattern" value="%ecompStartTime|%X{requestId}|%-10t|%ecompServiceName|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompErrorCategory|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n|\r\n', '^'}|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/> |
| <property name="eelfErrorLogPattern" value="%ecompStartTime|%X{requestId}|%-10t|%ecompServiceName|%X{partnerName}|%X{targetEntity}|%X{targetServiceName}|%ecompErrorCategory|%ecompResponseCode|%ecompResponseDescription|co=%X{component}:%replace(%replace(%m){'\\|', '!'}){'\r|\n', '^'}%n"/> |
| <property name="eelfTransLogPattern" value="%ecompStartTime|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{requestId}|%X{serviceInstanceId}|%-10t|%X{serverName}|%ecompServiceName|%X{partnerName}|%ecompStatusCode|%X{responseCode}|%replace(%replace(%X{responseDescription}){'\\|', '!'}){'\r|\n', '^'}|%X{instanceUUID}|%level|%X{severity}|%X{serverIpAddress}|%ecompElapsedTime|%X{server}|%X{clientIpAddress}|%eelfClassOfCaller|%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{partnerName}:%m%n"/> |
| --> |
| <property name="p_tim" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", UTC}"/> |
| <property name="p_lvl" value="%level"/> |
| <property name="p_log" value="%logger"/> |
| <property name="p_mdc" value="%replace(%replace(%replace(%mdc){'\t','\\\\t'}){'\n', '\\\\n'}){'\\|', '!'}"/> |
| <property name="p_msg" value="%replace(%replace(%msg){'\t', '\\\\t'}){'\n','\\\\n'}"/> |
| <property name="p_exc" value="%replace(%replace(%rootException){'\t', '\\\\t'}){'\n','\\\\n'}"/> |
| <property name="p_mak" value="%replace(%replace(%marker){'\t', '\\\\t'}){'\n','\\\\n'}"/> |
| <property name="p_thr" value="%thread"/> |
| <property name="pattern" value="%nopexception${p_tim}\t${p_thr}\t${p_lvl}\t${p_log}\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t%n"/> |
| <!-- Patterns from onap demo --> |
| <property name="errorPattern" value="%X{LogTimestamp}|%X{RequestID}|%thread|%replace(%X{ServiceName}){'\\|', '!'}|%X{PartnerName}|%X{TargetEntity}|%replace(%X{TargetServiceName}){'\\|', '!'}|%.-5level|%X{ErrorCode}|%X{ErrorDesc}|%msg%n" /> |
| <property name="debugPattern" value="%X{LogTimestamp}|%X{RequestID}|%msg\t${p_mdc}\t${p_msg}\t${p_exc}\t${p_mak}\t|^%n" /> |
| |
| <property name="auditPattern" value="%X{EntryTimestamp}|%X{LogTimestamp}|%X{RequestID}|%X{ServiceInstanceID}|%thread||%replace(%X{ServiceName}){'\\|', '!'}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}||||${p_mak}|${p_mdc}|||%msg%n" /> |
| <property name="metricPattern" value="%X{InvokeTimestamp}|%X{LogTimestamp}|%X{RequestID}|%X{ServiceInstanceID}|%thread||%replace(%X{ServiceName}){'\\|', '!'}|%X{PartnerName}|%X{TargetEntity}|%replace(%X{TargetServiceName}){'\\|', '!'}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}||||%X{TargetVirtualEntity}|${p_mak}|${p_mdc}|||%msg%n" /> |
| <property name="transLogPattern" value="%X{LogTimestamp}|%date{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}|%X{RequestID}|%X{ServiceInstanceID}|%-10t|%X{ServerFQDN}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%replace(%replace(%X{ResponseDesc}){'\\|', '!'}){'\r|\n', '^'}|%X{InstanceUUID}|%level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{clientIpAddress}||%X{unused}|%X{processKey}|%X{customField1}|%X{customField2}|%X{customField3}|%X{customField4}|co=%X{PartnerName}:%m%n"/> |
| |
| <conversionRule conversionWord="clr" converterClass="org.springframework.boot.logging.logback.ColorConverter"/> |
| <conversionRule conversionWord="wex" converterClass="org.springframework.boot.logging.logback.WhitespaceThrowableProxyConverter"/> |
| <conversionRule conversionWord="wEx" converterClass="org.springframework.boot.logging.logback.ExtendedWhitespaceThrowableProxyConverter"/> |
| <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender"> |
| <encoder> |
| <pattern> |
| %clr(%d{yyyy-MM-dd HH:mm:ss.SSS}){faint} %clr(${LOG_LEVEL_PATTERN:-%5p}) %clr(${PID:- }){magenta} %clr(---){faint} %clr([%15.15t]){faint} %clr(%-40.40logger{39}){cyan} %clr(:){faint} %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx} |
| </pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="SANE" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/rest/sane.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/rest/sane.log.%d{yyyy-MM-dd}</fileNamePattern> |
| </rollingPolicy> |
| <encoder> |
| <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n |
| </pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asyncSANE" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>1000</queueSize> |
| <includeCallerData>true</includeCallerData> |
| <appender-ref ref="SANE"/> |
| </appender> |
| |
| <appender name="METRIC" class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/rest/metrics.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/rest/metrics.log.%d{yyyy-MM-dd}</fileNamePattern> |
| </rollingPolicy> |
| <encoder> |
| <pattern>${metricPattern}</pattern> |
| </encoder> |
| </appender> |
| <appender name="asyncMETRIC" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>1000</queueSize> |
| <includeCallerData>true</includeCallerData> |
| <appender-ref ref="METRIC"/> |
| </appender> |
| |
| <appender name="DEBUG" |
| class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <filter class="ch.qos.logback.classic.filter.LevelFilter"> |
| <level>DEBUG</level> |
| <onMatch>ACCEPT</onMatch> |
| <onMismatch>DENY</onMismatch> |
| </filter> |
| <file>${logDirectory}/rest/debug.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/rest/debug.log.%d{yyyy-MM-dd} |
| </fileNamePattern> |
| </rollingPolicy> |
| <encoder> |
| <pattern>${debugPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asyncDEBUG" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>1000</queueSize> |
| <appender-ref ref="DEBUG"/> |
| <includeCallerData>true</includeCallerData> |
| </appender> |
| |
| <appender name="ERROR" |
| class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/rest/error.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/rest/error.log.%d{yyyy-MM-dd} |
| </fileNamePattern> |
| </rollingPolicy> |
| <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> |
| <level>WARN</level> |
| </filter> |
| <encoder> |
| <pattern>${errorPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asyncERROR" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>1000</queueSize> |
| <appender-ref ref="ERROR"/> |
| </appender> |
| |
| <appender name="AUDIT" |
| class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <file>${logDirectory}/rest/audit.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/rest/audit.log.%d{yyyy-MM-dd} |
| </fileNamePattern> |
| </rollingPolicy> |
| <encoder> |
| <pattern>${auditPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asyncAUDIT" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>1000</queueSize> |
| <includeCallerData>true</includeCallerData> |
| <appender-ref ref="AUDIT"/> |
| </appender> |
| |
| <appender name="translog" |
| class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <filter class="ch.qos.logback.classic.filter.LevelFilter"> |
| <level>DEBUG</level> |
| <onMatch>ACCEPT</onMatch> |
| <onMismatch>DENY</onMismatch> |
| </filter> |
| <file>${logDirectory}/rest/translog.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/rest/translog.log.%d{yyyy-MM-dd} |
| </fileNamePattern> |
| </rollingPolicy> |
| <encoder> |
| <pattern>${transLogPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="asynctranslog" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>1000</queueSize> |
| <includeCallerData>true</includeCallerData> |
| <appender-ref ref="translog"/> |
| </appender> |
| |
| <appender name="external" |
| class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> |
| <level>WARN</level> |
| </filter> |
| <file>${logDirectory}/external/external.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/external/external.log.%d{yyyy-MM-dd} |
| </fileNamePattern> |
| </rollingPolicy> |
| <encoder> |
| <pattern>${debugPattern}</pattern> |
| </encoder> |
| </appender> |
| |
| <appender name="auth" |
| class="ch.qos.logback.core.rolling.RollingFileAppender"> |
| <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> |
| <level>DEBUG</level> |
| </filter> |
| <file>${logDirectory}/auth/auth.log</file> |
| <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> |
| <fileNamePattern>${logDirectory}/auth/auth.log.%d{yyyy-MM-dd} |
| </fileNamePattern> |
| </rollingPolicy> |
| <encoder> |
| <pattern>%d{yyyy-MM-dd'T'HH:mm:ss.SSSZ, UTC}[%thread] %-5level %logger{1024} - %msg%n</pattern> |
| </encoder> |
| </appender> |
| <appender name="asyncAUTH" class="ch.qos.logback.classic.AsyncAppender"> |
| <queueSize>1000</queueSize> |
| <includeCallerData>true</includeCallerData> |
| <appender-ref ref="auth" /> |
| </appender> |
| |
| <logger name="org.onap.aai" level="DEBUG" additivity="false"> |
| <appender-ref ref="asyncDEBUG"/> |
| <appender-ref ref="asyncSANE"/> |
| <appender-ref ref="STDOUT"/> |
| </logger> |
| |
| <!-- Spring related loggers --> |
| <logger name="org.springframework" level="WARN"/> |
| <logger name="org.springframework.beans" level="WARN"/> |
| <logger name="org.springframework.web" level="WARN"/> |
| <logger name="com.blog.spring.jms" level="WARN"/> |
| <logger name="com.jayway.jsonpath" level="WARN"/> |
| |
| <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet |
| logging) --> |
| <logger name="org.codehaus.groovy" level="WARN"/> |
| <logger name="com.netflix.loadbalancer" level="WARN"/> |
| |
| <logger name="org.apache.zookeeper" level="OFF"/> |
| |
| <!-- Other Loggers that may help troubleshoot --> |
| <logger name="net.sf" level="WARN"/> |
| <logger name="org.apache.commons.httpclient" level="WARN"/> |
| <logger name="org.apache.commons" level="WARN"/> |
| <logger name="org.apache.coyote" level="WARN"/> |
| <logger name="org.apache.jasper" level="WARN"/> |
| |
| <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging. |
| May aid in troubleshooting) --> |
| <logger name="org.apache.camel" level="WARN"/> |
| <logger name="org.apache.cxf" level="WARN"/> |
| <logger name="org.apache.camel.processor.interceptor" level="WARN"/> |
| <logger name="org.apache.cxf.jaxrs.interceptor" level="WARN"/> |
| <logger name="org.apache.cxf.service" level="WARN"/> |
| <logger name="org.restlet" level="WARN"/> |
| <logger name="org.apache.camel.component.restlet" level="WARN"/> |
| |
| <logger name="org.hibernate.validator" level="WARN"/> |
| <logger name="org.hibernate" level="WARN"/> |
| <logger name="org.hibernate.ejb" level="OFF"/> |
| |
| <!-- logback internals logging --> |
| <logger name="ch.qos.logback.classic" level="WARN"/> |
| <logger name="ch.qos.logback.core" level="WARN"/> |
| |
| <logger name="org.eclipse.jetty" level="WARN"/> |
| |
| <logger name="org.onap.aai.aaf.auth" level="DEBUG" additivity="false"> |
| <appender-ref ref="asyncAUTH" /> |
| </logger> |
| <logger name="org.onap.aai.aailog.logs.AaiScheduledTaskAuditLog" level="INFO"> |
| <appender-ref ref="asyncAUDIT"/> |
| </logger> |
| |
| <logger name="org.onap.logging.filter.base.AbstractAuditLogFilter" level="INFO"> |
| <appender-ref ref="asyncAUDIT"/> |
| </logger> |
| |
| <logger name="org.onap.aai.logging.ErrorLogHelper" level="WARN"> |
| <appender-ref ref="asyncERROR"/> |
| </logger> |
| <logger name="org.onap.aai.schemaservice.interceptors.post" level="DEBUG" additivity="false"> |
| <appender-ref ref="asynctranslog" /> |
| </logger> |
| |
| <logger name="org.apache" level="OFF"/> |
| <logger name="org.zookeeper" level="OFF"/> |
| <logger name="org.janusgraph" level="WARN"/> |
| <logger name="com.att.aft.dme2" level="WARN"/> |
| |
| |
| <root level="DEBUG"> |
| <appender-ref ref="STDOUT" /> |
| <appender-ref ref="external"/> |
| </root> |
| </configuration> |