#-
 # ============LICENSE_START=======================================================
 # ONAP - CCSDK
 # ================================================================================
 # Copyright (C) 2020 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=========================================================
 #

property.logDir = ${env:LOG_PATH:-./target}

property.pattern = %d{ISO8601} | %-5p | %-16t | %-32c{1} | %X{currentGraph} - %X{nodeId} | %m%n

#default mdc values
property.ServiceName = INTERNAL
property.ErrorCode = 900
property.ErrorDesc = UnknownError

rootLogger.level = INFO
rootLogger.appenderRef.AppFile.ref = AppFile
rootLogger.appenderRef.Console.ref = Console
rootLogger.appenderRef.DebugFile.ref = DebugFile
rootLogger.appenderRef.ErrorFile.ref = ErrorFile
rootLogger.appenderRef.Console.filter.threshold.type = ThresholdFilter
rootLogger.appenderRef.Console.filter.threshold.level = DEBUG

appender.console.type = Console
appender.console.name = Console
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = ${pattern}

appender.app.type = RollingRandomAccessFile
appender.app.name = AppFile
appender.app.fileName = ${logDir}/app.log
appender.app.filePattern = ${logDir}/app.log.%i
appender.app.immediateFlush = true
appender.app.append = true
appender.app.layout.type = PatternLayout
appender.app.layout.pattern = ${pattern}
appender.app.policies.type = Policies
appender.app.policies.size.type = SizeBasedTriggeringPolicy
appender.app.policies.size.size = 10MB
appender.app.strategy.type = DefaultRolloverStrategy
appender.app.strategy.max = 100
appender.app.strategy.fileIndex = min

appender.debug.type = RollingRandomAccessFile
appender.debug.name = DebugFile
appender.debug.fileName = ${logDir}/debug.log
appender.debug.filePattern = ${logDir}/debug.log.%i
appender.debug.immediateFlush = true
appender.debug.append = true
appender.debug.layout.type = PatternLayout
appender.debug.layout.pattern = %d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|%-16.16t|%-5.5p|%-32.32c{1}|%X{currentGraph} - %X{nodeId}|%m%n
appender.debug.policies.type = Policies
appender.debug.policies.size.type = SizeBasedTriggeringPolicy
appender.debug.policies.size.size = 10MB
appender.debug.strategy.type = DefaultRolloverStrategy
appender.debug.strategy.max = 200
appender.debug.strategy.fileIndex = min

appender.error.type = RollingRandomAccessFile
appender.error.name = ErrorFile
appender.error.fileName = ${logDir}/error.log
appender.error.filePattern = ${logDir}/error.log.%i
appender.error.immediateFlush = true
appender.error.append = true
appender.error.layout.type = PatternLayout
appender.error.layout.pattern = %d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|%-16.16t|$${ctx:ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%p|$${ctx:ErrorCode}|$${ctx:ErrorDesc}|%m%n

appender.error.policies.type = Policies
appender.error.policies.size.type = SizeBasedTriggeringPolicy
appender.error.policies.size.size = 10MB
appender.error.strategy.type = DefaultRolloverStrategy
appender.error.strategy.max = 100
appender.error.strategy.fileIndex = min
appender.error.filter.threshold.type = ThresholdFilter
appender.error.filter.threshold.level = WARN

appender.metric.type = RollingRandomAccessFile
appender.metric.name = MetricFile
appender.metric.fileName = ${logDir}/metric.log
appender.metric.filePattern = ${logDir}/metric.log.%i
appender.metric.immediateFlush = true
appender.metric.append = true
appender.metric.layout.type = PatternLayout
appender.metric.layout.pattern=%X{InvokeTimestamp}|%X{LogTimestamp}|%X{RequestID}|%X{ServiceInstanceID}|%-16.16t|%X{ServerFQDN}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceID}|%p|%X{Severity}|192.168.23.111|%X{ElapsedTime}|${hostName}|%X{ClientIPAddress}|%C{1}|||%X{TargetElement}|%markerSimpleName|%X|%X{currentGraph} - %X{nodeId}||%m%n
appender.metric.policies.type = Policies
appender.metric.policies.size.type = SizeBasedTriggeringPolicy
appender.metric.policies.size.size = 10MB
appender.metric.strategy.type = DefaultRolloverStrategy
appender.metric.strategy.max = 100
appender.metric.strategy.fileIndex = min

appender.audit.type = RollingRandomAccessFile
appender.audit.name = AuditFile
appender.audit.fileName = ${logDir}/audit.log
appender.audit.filePattern = ${logDir}/audit.log.%i
appender.audit.immediateFlush = true
appender.audit.append = true
appender.audit.layout.type = PatternLayout
appender.audit.layout.pattern=%X{EntryTimestamp}|%X{LogTimestamp}|%X{RequestID}|%X{ServiceInstanceID}|%-16.16t|%X{ServerFQDN}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDesc}|%X{InstanceID}|INFO|%X{Severity}|192.168.23.111|%X{ElapsedTime}|${hostName}|%X{ClientIPAddress}|%C{1}|%X{AUDIT-Unused}|%X{AUDIT-ProcessKey}|%markerSimpleName|%X|||%m%n
appender.audit.policies.type = Policies
appender.audit.policies.size.type = SizeBasedTriggeringPolicy
appender.audit.policies.size.size = 10MB
appender.audit.strategy.type = DefaultRolloverStrategy
appender.audit.strategy.max = 200
appender.audit.strategy.fileIndex = min

appender.rr.name = RequestResponseFile
appender.rr.type = RollingRandomAccessFile
appender.rr.fileName = ${logDir}/request-response.log
appender.rr.filePattern = ${logDir}/request-response.log.%i
appender.rr.immediateFlush = true
appender.rr.append = true
appender.rr.layout.type = PatternLayout
appender.rr.layout.pattern = %d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|%X{PartnerName}|%m%n
appender.rr.policies.type = Policies
appender.rr.policies.size.type = SizeBasedTriggeringPolicy
appender.rr.policies.size.size = 10MB
appender.rr.strategy.type = DefaultRolloverStrategy
appender.rr.strategy.max = 100
appender.rr.strategy.fileIndex = min

logger.metric.name = org.onap.ccsdk.sli.core.filters.metric
logger.metric.level = INFO
logger.metric.additivity = false
logger.metric.appenderRef.MetricFile.ref = MetricFile

logger.metric2.name = org.onap.logging.filter.base.AbstractMetricLogFilter
logger.metric2.level = INFO
logger.metric2.additivity = false
logger.metric2.appenderRef.MetricFile.ref = MetricFile

logger.audit.name = org.onap.logging.filter.base.AbstractAuditLogFilter
logger.audit.level = INFO
logger.audit.additivity = false
logger.audit.appenderRef.AuditFile.ref = AuditFile

logger.rr.name = org.onap.logging.filter.base.PayloadLoggingServletFilter
logger.rr.level = INFO
logger.rr.additivity = false
logger.rr.appenderRef.RequestResponseFile.ref = RequestResponseFile

logger.ccsdk.name = org.onap.ccsdk
logger.ccsdk.level = DEBUG

logger.onaplogging.name = org.onap.logging
logger.onaplogging.level = DEBUG