diff options
author | Vidya Shinde <vidya.shinde@amdocs.com> | 2017-08-11 16:28:12 +0530 |
---|---|---|
committer | Vidya Shinde <vidya.shinde@amdocs.com> | 2017-08-11 16:28:12 +0530 |
commit | 5a0d594dd5eef5026ff7a3b854b68ec2858f9da5 (patch) | |
tree | 898d1868d801ef4487bcef407bfba26eb40b706e /onap/aai | |
parent | f54e335ef68b28e087fb8625098fc49bd285b4d4 (diff) |
[LOG] Add canonicalization for AAI logs
Canonicalization of path for log provider configuration file and log files
Change-Id: I9ed5e2d66adbf30879dfe44445fd1e7d7820bdcb
Issue-ID: LOG-25
Signed-off-by: Vidya Shinde <vidya.shinde@amdocs.com>
Diffstat (limited to 'onap/aai')
-rw-r--r-- | onap/aai/README.md | 44 | ||||
-rw-r--r-- | onap/aai/ajsc-aai/conf/logback.xml | 296 | ||||
-rw-r--r-- | onap/aai/model-loader/conf/logback.xml | 164 |
3 files changed, 504 insertions, 0 deletions
diff --git a/onap/aai/README.md b/onap/aai/README.md new file mode 100644 index 0000000..a930eb9 --- /dev/null +++ b/onap/aai/README.md @@ -0,0 +1,44 @@ +#################################################################################################################################################################### +## AAI Logging Configuration +==================================================================================================================================================================== +AAI has two docker containers- aai-service, hbase-1.2.3 and model-loader-service. +Each container has its own logback.xml +Canonical logs will be generated at /var/log/onap/aai/ +==================================================================================================================================================================== +## Instructions for deployment +==================================================================================================================================================================== +### AAI logging deployment for aai-service +-------------------------------------------------------------------------------------------------------------------------------------------------------------------- + 1. Log provider file is available at the path, /etc/onap/aai/conf.d/, on the host VM. + 2. Copy the canonical ‘logback.xml’ from 'aai' directory (of gerrit) into the path created in step 1. + 3. Give the read access to 'others' for the file, /etc/onap/aai/conf.d/logback.xml. + This will give access to the 'aaiadmin' user used by the AAI container to read this file. + 4. Create the canonical path for logs, /var/log/onap/aai, on the host VM. + 5. Provide write permissions for "others" users for directory created in step 4. + 6. Volume-Mount: The aai container requires two host paths mapped as volume in the container + + 6.1. Log file path: + Host path - /var/log/onap/aai/ mapped to + Container path - /var/log/onap/aai/ + 6.2. Log provider file path: + Host Path : /etc/onap/aai/conf.d/logback.xml mapped to + Container path : /opt/app/aai/bundleconfig/etc/logback.xml +------------------------------------------------------------------------------------------------------------------------------------------------------------------- +### AAI logging deployment for Model-Loader +-------------------------------------------------------------------------------------------------------------------------------------------------------------------- + 1. Log provider file is available at the path, /opt/jetty/jetty*/webapps/model-loader/WEB-INF/classes/, in the container. + Note: Inside model-loader docker image. (jetty* refers to the particular version being used. + In release-1.0 environment, the name is '/jetty-distribution-9.3.9.v20160517') + 2. Copy the canonical ‘logback.xml’ from 'aai' directory (of gerrit) into the path created in step 1. + 3. Give the read access to 'others' for the file, /etc/onap/aai/conf.d/logback.xml. + This will give access to the 'aaiadmin' user used by the AAI container to read this file. + 4. Create the canonical path for logs, /var/log/onap/aai/aai-ml, on the host VM. + 5. Provide write permissions for "others" users for directory created in step 4. + 6. Volume-Mount: The aai container requires one host path mapped as volume in the container + + 6.1. Log file path: + Host path - /var/log/onap/aai/aai-ml mapped to + Container path - /var/log/onap/aai/aai-ml + 6.2. Log provider file path: + Note: Log provider path cannot be configured externally as it is bundled inside a WAR. +#################################################################################################################################################################### diff --git a/onap/aai/ajsc-aai/conf/logback.xml b/onap/aai/ajsc-aai/conf/logback.xml new file mode 100644 index 0000000..2a69372 --- /dev/null +++ b/onap/aai/ajsc-aai/conf/logback.xml @@ -0,0 +1,296 @@ +<configuration debug="false" scan="true" scanPeriod="60 seconds"> + <contextName>${module.ajsc.namespace.name}</contextName> + <jmxConfigurator /> + <property name="logDir" value="/var/log/onap" /> + <property name="componentName" value="aai"></property> + <property name="restLogDirectory" value="${logDir}/${componentName}/rest" /> + <property name="dmaapLogDirectory" value="${logDir}/${componentName}/dmaapAAIWorkloadConsumer" /> + <property name="perfLogsDirectory" value="${logDir}/${componentName}/perf-audit" /> + <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", 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" /> + <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT"> + <filter class="ch.qos.logback.classic.filter.LevelFilter"> + <level>ERROR</level> + <onMatch>ACCEPT</onMatch> + <onMismatch>DENY</onMismatch> + </filter> + <encoder> + <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - %msg%n</pattern> + </encoder> + </appender> + <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="METRIC"> + <filter class="ch.qos.logback.classic.filter.LevelFilter"> + <level>INFO</level> + <onMatch>ACCEPT</onMatch> + <onMismatch>DENY</onMismatch> + </filter> + <file>${restLogDirectory}/${metricsLogName}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${restLogDirectory}/${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>${pattern}</pattern> + </encoder> + </appender> + <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncMETRIC"> + <queueSize>${queueSize}</queueSize> + <appender-ref ref="METRIC" /> + </appender> + <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="DEBUG"> + <filter class="ch.qos.logback.classic.filter.LevelFilter"> + <level>DEBUG</level> + <onMatch>ACCEPT</onMatch> + <onMismatch>DENY</onMismatch> + </filter> + <file>${restLogDirectory}/${debugLogName}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${restLogDirectory}/${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="asyncDEBUG"> + <queueSize>${queueSize}</queueSize> + <appender-ref ref="DEBUG" /> + </appender> + <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="ERROR"> + <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> + <level>WARN</level> + </filter> + <file>${restLogDirectory}/${errorLogName}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${restLogDirectory}/${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> + </appender> + <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncERROR"> + <queueSize>${queueSize}</queueSize> + <appender-ref ref="ERROR" /> + </appender> + <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="AUDIT"> + <file>${restLogDirectory}/${auditLogName}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${restLogDirectory}/${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="asyncAUDIT"> + <queueSize>${queueSize}</queueSize> + <appender-ref ref="AUDIT" /> + </appender> + <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIWorkloadConsumer"> + <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> + <level>WARN</level> + </filter> + <File>${dmaapLogDirectory}/${errorLogName}.log</File> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${dmaapLogDirectory}/${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> + </appender> + <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="dmaapAAIWorkloadConsumerdebug"> + <filter class="ch.qos.logback.classic.filter.LevelFilter"> + <level>DEBUG</level> + <onMatch>ACCEPT</onMatch> + <onMismatch>DENY</onMismatch> + </filter> + <File>${dmaapLogDirectory}/${debugLogName}.log</File> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${dmaapLogDirectory}/${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.core.rolling.RollingFileAppender" name="dmaapAAIWorkloadConsumermetric"> + <filter class="ch.qos.logback.classic.filter.LevelFilter"> + <level>INFO</level> + <onMatch>ACCEPT</onMatch> + <onMismatch>DENY</onMismatch> + </filter> + <File>${dmaapLogDirectory}/${metricsLogName}.log</File> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${dmaapLogDirectory}/${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>${pattern}</pattern> + </encoder> + </appender> + <!-- Spring related loggers --> + <logger level="WARN" name="org.springframework" /> + <logger level="WARN" name="org.springframework.beans" /> + <logger level="WARN" name="org.springframework.web" /> + <logger level="WARN" name="com.blog.spring.jms" /> + <!-- AJSC Services (bootstrap services) --> + <logger level="WARN" name="ajsc" /> + <logger level="WARN" name="ajsc.RouteMgmtService" /> + <logger level="WARN" name="ajsc.ComputeService" /> + <logger level="WARN" name="ajsc.VandelayService" /> + <logger level="WARN" name="ajsc.FilePersistenceService" /> + <logger level="WARN" name="ajsc.UserDefinedJarService" /> + <logger level="WARN" name="ajsc.UserDefinedBeansDefService" /> + <logger level="WARN" name="ajsc.LoggingConfigurationService" /> + <!-- AJSC related loggers (DME2 Registration, csi logging, restlet, servlet logging) --> + <logger level="WARN" name="ajsc.utils" /> + <logger level="WARN" name="ajsc.utils.DME2Helper" /> + <logger level="WARN" name="ajsc.filters" /> + <logger level="WARN" name="ajsc.beans.interceptors" /> + <logger level="WARN" name="ajsc.restlet" /> + <logger level="WARN" name="ajsc.servlet" /> + <logger level="WARN" name="com.att.ajsc" /> + <logger level="WARN" name="com.att.ajsc.csi.logging" /> + <logger level="WARN" name="com.att.ajsc.filemonitor" /> + <!-- Other Loggers that may help troubleshoot --> + <logger level="WARN" name="net.sf" /> + <logger level="WARN" name="org.apache.commons.httpclient" /> + <logger level="WARN" name="org.apache.commons" /> + <logger level="WARN" name="org.apache.coyote" /> + <logger level="WARN" name="org.apache.jasper" /> + <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging. May aid in troubleshooting) --> + <logger level="WARN" name="org.apache.camel" /> + <logger level="WARN" name="org.apache.cxf" /> + <logger level="WARN" name="org.apache.camel.processor.interceptor" /> + <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" /> + <logger level="WARN" name="org.apache.cxf.service" /> + <logger level="WARN" name="org.restlet" /> + <logger level="WARN" name="org.apache.camel.component.restlet" /> + <!-- logback internals logging --> + <logger level="WARN" name="ch.qos.logback.classic" /> + <logger level="WARN" name="ch.qos.logback.core" /> + <!-- logback jms appenders & loggers definition starts here --> + <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="auditLogs"> + <filter class="ch.qos.logback.classic.filter.ThresholdFilter" /> + <file>${perfLogsDirectory}/Audit-${lrmRVer}-${lrmRO}-${Pid}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${perfLogsDirectory}/Audit-${lrmRVer}-${lrmRO}-${Pid}.%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.core.rolling.RollingFileAppender" name="perfLogs"> + <filter class="ch.qos.logback.classic.filter.ThresholdFilter" /> + <file>${perfLogsDirectory}/Perform-${lrmRVer}-${lrmRO}-${Pid}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${perfLogsDirectory}/Perform-${lrmRVer}-${lrmRO}-${Pid}.%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="ASYNC-audit"> + <queueSize>1000</queueSize> + <discardingThreshold>0</discardingThreshold> + <appender-ref ref="Audit-Record-Queue" /> + </appender> + <logger additivity="false" level="INFO" name="AuditRecord"> + <appender-ref ref="ASYNC-audit" /> + <appender-ref ref="auditLogs" /> + </logger> + <logger additivity="false" level="INFO" name="AuditRecord_DirectCall"> + <appender-ref ref="ASYNC-audit" /> + <appender-ref ref="auditLogs" /> + </logger> + <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC-perf"> + <queueSize>1000</queueSize> + <discardingThreshold>0</discardingThreshold> + <appender-ref ref="Performance-Tracker-Queue" /> + </appender> + <logger additivity="false" level="INFO" name="PerfTrackerRecord"> + <appender-ref ref="ASYNC-perf" /> + <appender-ref ref="perfLogs" /> + </logger> + <!-- logback jms appenders & loggers definition ends here --> + <logger additivity="false" level="DEBUG" name="org.openecomp.aai.dmaap"> + <appender-ref ref="dmaapAAIWorkloadConsumer" /> + <appender-ref ref="dmaapAAIWorkloadConsumerdebug" /> + <appender-ref ref="dmaapAAIWorkloadConsumermetric" /> + </logger> + <logger additivity="false" level="INFO" name="org.openecomp.aai"> + <appender-ref ref="asyncDEBUG" /> + <appender-ref ref="asyncERROR" /> + <appender-ref ref="asyncMETRIC" /> + </logger> + <logger additivity="false" level="INFO" name="org.openecomp.aai.AUDITLOGGER"> + <appender-ref ref="asyncAUDIT" /> + </logger> + <logger level="WARN" name="org.apache" /> + <logger level="WARN" name="org.zookeeper" /> + <logger level="WARN" name="com.thinkaurelius" /> + <!-- ============================================================================ --> + <!-- General EELF logger --> + <!-- ============================================================================ --> + <logger additivity="false" level="WARN" name="com.att.eelf"> + <appender-ref ref="asyncDEBUG" /> + <appender-ref ref="asyncERROR" /> + <appender-ref ref="asyncMETRIC" /> + <appender-ref ref="asyncAUDIT" /> + </logger> + <root level="WARN"> + <appender-ref ref="asyncDEBUG" /> + <appender-ref ref="asyncERROR" /> + <appender-ref ref="asyncMETRIC" /> + <appender-ref ref="asyncAUDIT" /> + </root> +</configuration> + diff --git a/onap/aai/model-loader/conf/logback.xml b/onap/aai/model-loader/conf/logback.xml new file mode 100644 index 0000000..3443688 --- /dev/null +++ b/onap/aai/model-loader/conf/logback.xml @@ -0,0 +1,164 @@ +<configuration debug="false" scan="true" scanPeriod="3 seconds"> + <!--<jmxConfigurator /> --> + <!-- directory path for all other type logs --> + <property name="logDir" value="/var/log/onap" /> + <!-- specify the component name <ECOMP-component-name>::= "MSO" | "DCAE" + | "ASDC " | "AAI" |"Policy" | "SDNC" | "AC" --> + <property name="componentName" value="aai"></property> + <property name="subComponentName" value="aai-ml"></property> + <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" /> + <!-- default eelf log file names --> + <property name="generalLogName" 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" /> + <property name="pattern" value="%d{"yyyy-MM-dd'T'HH:mm:ss.SSSXXX", 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" /> + <!-- 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 --> + <appender class="ch.qos.logback.core.rolling.RollingFileAppender" name="EELF"> + <file>${logDirectory}/${generalLogName}.log</file> + <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy"> + <fileNamePattern>${logDirectory}/${generalLogName}.%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="asyncEELF"> + <!-- deny all events with a level below INFO, that is TRACE and DEBUG --> + <filter class="ch.qos.logback.classic.filter.ThresholdFilter"> + <level>INFO</level> + </filter> + <queueSize>256</queueSize> + <appender-ref ref="EELF" /> + </appender> + <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>256</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>${pattern}</pattern> + </encoder> + </appender> + <appender class="ch.qos.logback.classic.AsyncAppender" name="asyncEELFMetrics"> + <queueSize>256</queueSize> + <appender-ref ref="EELFMetrics" /> + </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>256</queueSize> + <appender-ref ref="EELFDebug" /> + <includeCallerData>true</includeCallerData> + </appender> + <!-- ============================================================================ --> + <!-- EELF loggers --> + <!-- ============================================================================ --> + <logger additivity="false" level="info" name="com.att.eelf"> + <appender-ref ref="asyncEELF" /> + <appender-ref ref="asyncEELFDebug" /> + </logger> + <logger additivity="false" level="info" name="com.att.eelf.security"> + <appender-ref ref="asyncEELFSecurity" /> + </logger> + <logger additivity="false" level="info" name="com.att.eelf.perf"> + <appender-ref ref="asyncEELFPerformance" /> + </logger> + <logger additivity="false" level="info" name="com.att.eelf.server"> + <appender-ref ref="asyncEELFServer" /> + </logger> + <logger additivity="false" level="info" name="com.att.eelf.policy"> + <appender-ref ref="asyncEELFPolicy" /> + </logger> + <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> + <!-- Spring related loggers --> + <logger level="WARN" name="org.springframework" /> + <logger level="WARN" name="org.springframework.beans" /> + <logger level="WARN" name="org.springframework.web" /> + <logger level="WARN" name="com.blog.spring.jms" /> + <logger level="INFO" name="com.att" /> + <!-- Model Loader loggers --> + <logger level="INFO" name="org.openecomp.modelloader" /> + <!-- Other Loggers that may help troubleshoot --> + <logger level="WARN" name="net.sf" /> + <logger level="WARN" name="org.apache.commons.httpclient" /> + <logger level="WARN" name="org.apache.commons" /> + <logger level="WARN" name="org.apache.coyote" /> + <logger level="WARN" name="org.apache.jasper" /> + <!-- Camel Related Loggers (including restlet/servlet/jaxrs/cxf logging. + May aid in troubleshooting) --> + <logger level="WARN" name="org.apache.camel" /> + <logger level="WARN" name="org.apache.cxf" /> + <logger level="WARN" name="org.apache.camel.processor.interceptor" /> + <logger level="WARN" name="org.apache.cxf.jaxrs.interceptor" /> + <logger level="WARN" name="org.apache.cxf.service" /> + <logger level="WARN" name="org.restlet" /> + <logger level="WARN" name="org.apache.camel.component.restlet" /> + <!-- logback internals logging --> + <logger level="WARN" name="ch.qos.logback.classic" /> + <logger level="WARN" name="ch.qos.logback.core" /> + <root> + <appender-ref ref="asyncEELF" /> + <!-- <appender-ref ref="asyncEELFDebug" /> --> + </root> +</configuration> + |