[VID-6] Initial rebase push
[vid.git] / epsdk-app-onap / src / main / resources / logback_template.xml
diff --git a/epsdk-app-onap/src/main/resources/logback_template.xml b/epsdk-app-onap/src/main/resources/logback_template.xml
new file mode 100755 (executable)
index 0000000..b516728
--- /dev/null
@@ -0,0 +1,341 @@
+<?xml version="1.0" encoding="UTF-8"?>\r
+<configuration scan="true" scanPeriod="3 seconds" debug="true">\r
+  <!--  specify the component name -->\r
+  <property name="componentName" value="vid"></property>\r
+  \r
+  <!--  specify the base path of the log directory -->\r
+  <property name="logDirPrefix" value="${VID_LOG_DIR}"></property>\r
+  \r
+  <!-- The directories where logs are written -->\r
+  <property name="logDirectory" value="${logDirPrefix}/${componentName}" />\r
+  <!-- Can easily relocate debug logs by modifying this path. -->\r
+  <property name="debugLogDirectory" value="${logDirPrefix}/${componentName}" />\r
+  \r
+  <!--  log file names -->\r
+  <property name="generalLogName" value="application" />\r
+  <property name="errorLogName" value="error" />\r
+  <property name="metricsLogName" value="metrics" />\r
+  <property name="auditLogName" value="audit" />\r
+  <property name="debugLogName" value="debug" />\r
+  <!--\r
+  These loggers are not used in code (yet). \r
+  <property name="securityLogName" value="security" />\r
+  <property name="policyLogName" value="policy" />\r
+  <property name="performanceLogName" value="performance" />\r
+  <property name="serverLogName" value="server" />\r
+   -->\r
+   \r
+  <property name="defaultPattern" value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />\r
+  <property name="debugLoggerPattern" value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Timer}| %msg%n" />\r
+  <!-- <property name="debugLoggerPattern" value="%date{ISO8601}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{ServiceName}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ServerFQDN}|%X{RemoteHost}|%X{Timer}|[%caller{3}]|%msg%n" />-->\r
+  \r
+  <!-- Example evaluator filter applied against console appender -->\r
+  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">\r
+    <encoder>\r
+      <pattern>${defaultPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+\r
+  <!-- ============================================================================ -->\r
+  <!-- EELF Appenders -->\r
+  <!-- ============================================================================ -->\r
+\r
+  <!-- The EELFAppender is used to record events to the general application \r
+    log -->\r
+    \r
+    \r
+  <appender name="EELF"\r
+    class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${generalLogName}.log</file>\r
+    <rollingPolicy\r
+      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+      <fileNamePattern>${logDirectory}/${generalLogName}.%i.log.zip\r
+      </fileNamePattern>\r
+      <minIndex>1</minIndex>\r
+      <maxIndex>9</maxIndex>\r
+    </rollingPolicy>\r
+    <triggeringPolicy\r
+      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
+      <maxFileSize>5MB</maxFileSize>\r
+    </triggeringPolicy>\r
+    <encoder>\r
+      <pattern>${defaultPattern}</pattern>\r
+    </encoder>\r
+    <filter class="org.openecomp.portalapp.util.CustomLoggingFilter" />\r
+  </appender>\r
+  \r
+  <appender name="asyncEELF" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELF" />\r
+  </appender>\r
+\r
+  <!-- EELF Security Appender. This appender is used to record security events \r
+    to the security log file. Security events are separate from other loggers \r
+    in EELF so that security log records can be captured and managed in a secure \r
+    way separate from the other logs. This appender is set to never discard any \r
+    events. -->\r
+  <!--     \r
+  <appender name="EELFSecurity"\r
+    class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${securityLogName}.log</file>\r
+    <rollingPolicy\r
+      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+      <fileNamePattern>${logDirectory}/${securityLogName}.%i.log.zip\r
+      </fileNamePattern>\r
+      <minIndex>1</minIndex>\r
+      <maxIndex>9</maxIndex>\r
+    </rollingPolicy>\r
+    <triggeringPolicy\r
+      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
+      <maxFileSize>5MB</maxFileSize>\r
+    </triggeringPolicy>\r
+    <encoder>\r
+      <pattern>${defaultPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  \r
+  <appender name="asyncEELFSecurity" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <discardingThreshold>0</discardingThreshold>\r
+    <appender-ref ref="EELFSecurity" />\r
+  </appender>\r
+   -->\r
+   \r
+  <!-- EELF Performance Appender. This appender is used to record performance \r
+    records. -->\r
+  <!--\r
+  <appender name="EELFPerformance"\r
+    class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${performanceLogName}.log</file>\r
+    <rollingPolicy\r
+      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+      <fileNamePattern>${logDirectory}/${performanceLogName}.%i.log.zip\r
+      </fileNamePattern>\r
+      <minIndex>1</minIndex>\r
+      <maxIndex>9</maxIndex>\r
+    </rollingPolicy>\r
+    <triggeringPolicy\r
+      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
+      <maxFileSize>5MB</maxFileSize>\r
+    </triggeringPolicy>\r
+    <encoder>\r
+      <outputPatternAsHeader>true</outputPatternAsHeader>\r
+      <pattern>${defaultPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  <appender name="asyncEELFPerformance" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFPerformance" />\r
+  </appender>\r
+  -->\r
+\r
+  <!-- EELF Server Appender. This appender is used to record Server related \r
+    logging events. The Server logger and appender are specializations of the \r
+    EELF application root logger and appender. This can be used to segregate Server \r
+    events from other components, or it can be eliminated to record these events \r
+    as part of the application root log. -->\r
+  <!--\r
+  <appender name="EELFServer"\r
+    class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${serverLogName}.log</file>\r
+    <rollingPolicy\r
+      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+      <fileNamePattern>${logDirectory}/${serverLogName}.%i.log.zip\r
+      </fileNamePattern>\r
+      <minIndex>1</minIndex>\r
+      <maxIndex>9</maxIndex>\r
+    </rollingPolicy>\r
+    <triggeringPolicy\r
+      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
+      <maxFileSize>5MB</maxFileSize>\r
+    </triggeringPolicy>\r
+    <encoder>\r
+        <pattern>${defaultPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  <appender name="asyncEELFServer" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFServer" />\r
+  </appender>\r
+   -->\r
+  \r
+  <!-- EELF Policy Appender. This appender is used to record Policy engine \r
+    related logging events. The Policy logger and appender are specializations \r
+    of the EELF application root logger and appender. This can be used to segregate \r
+    Policy engine events from other components, or it can be eliminated to record \r
+    these events as part of the application root log. -->\r
+  <!--\r
+  <appender name="EELFPolicy"\r
+    class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${policyLogName}.log</file>\r
+    <rollingPolicy\r
+      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+      <fileNamePattern>${logDirectory}/${policyLogName}.%i.log.zip\r
+      </fileNamePattern>\r
+      <minIndex>1</minIndex>\r
+      <maxIndex>9</maxIndex>\r
+    </rollingPolicy>\r
+    <triggeringPolicy\r
+      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
+      <maxFileSize>5MB</maxFileSize>\r
+    </triggeringPolicy>\r
+    <encoder>\r
+        <pattern>${defaultPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  <appender name="asyncEELFPolicy" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFPolicy" />\r
+  </appender>\r
+  -->\r
+  \r
+  <!-- EELF Audit Appender. This appender is used to record audit engine \r
+    related logging events. The audit logger and appender are specializations \r
+    of the EELF application root logger and appender. This can be used to segregate \r
+    Policy engine events from other components, or it can be eliminated to record \r
+    these events as part of the application root log. -->\r
+    \r
+  <appender name="EELFAudit"\r
+    class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${auditLogName}.log</file>\r
+    <rollingPolicy\r
+      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+      <fileNamePattern>${logDirectory}/${auditLogName}.%i.log.zip\r
+      </fileNamePattern>\r
+      <minIndex>1</minIndex>\r
+      <maxIndex>9</maxIndex>\r
+    </rollingPolicy>\r
+    <triggeringPolicy\r
+      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
+      <maxFileSize>5MB</maxFileSize>\r
+    </triggeringPolicy>\r
+    <encoder>\r
+         <pattern>${defaultPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  <appender name="asyncEELFAudit" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFAudit" />\r
+  </appender>\r
+\r
+  <appender name="EELFMetrics"\r
+    class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${metricsLogName}.log</file>\r
+    <rollingPolicy\r
+      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+      <fileNamePattern>${logDirectory}/${metricsLogName}.%i.log.zip\r
+      </fileNamePattern>\r
+      <minIndex>1</minIndex>\r
+      <maxIndex>9</maxIndex>\r
+    </rollingPolicy>\r
+    <triggeringPolicy\r
+      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
+      <maxFileSize>5MB</maxFileSize>\r
+    </triggeringPolicy>\r
+    <encoder>\r
+      <!-- <pattern>"%d{HH:mm:ss.SSS} [%thread] %-5level %logger{1024} - \r
+        %msg%n"</pattern> -->\r
+      <pattern>${defaultPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  \r
+  \r
+  <appender name="asyncEELFMetrics" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFMetrics"/>\r
+  </appender>\r
+   \r
+  <appender name="EELFError"\r
+    class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${logDirectory}/${errorLogName}.log</file>\r
+    <rollingPolicy\r
+      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+      <fileNamePattern>${logDirectory}/${errorLogName}.%i.log.zip\r
+      </fileNamePattern>\r
+      <minIndex>1</minIndex>\r
+      <maxIndex>9</maxIndex>\r
+    </rollingPolicy>\r
+    <triggeringPolicy\r
+      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
+      <maxFileSize>5MB</maxFileSize>\r
+    </triggeringPolicy>\r
+    <encoder>\r
+      <pattern>${defaultPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  \r
+  <appender name="asyncEELFError" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFError"/>\r
+  </appender>\r
+  \r
+   <appender name="EELFDebug"\r
+    class="ch.qos.logback.core.rolling.RollingFileAppender">\r
+    <file>${debugLogDirectory}/${debugLogName}.log</file>\r
+    <rollingPolicy\r
+      class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">\r
+      <fileNamePattern>${debugLogDirectory}/${debugLogName}.%i.log.zip\r
+      </fileNamePattern>\r
+      <minIndex>1</minIndex>\r
+      <maxIndex>9</maxIndex>\r
+    </rollingPolicy>\r
+    <triggeringPolicy\r
+      class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">\r
+      <maxFileSize>5MB</maxFileSize>\r
+    </triggeringPolicy>\r
+    <encoder>\r
+      <pattern>${debugLoggerPattern}</pattern>\r
+    </encoder>\r
+  </appender>\r
+  \r
+  <appender name="asyncEELFDebug" class="ch.qos.logback.classic.AsyncAppender">\r
+    <queueSize>256</queueSize>\r
+    <appender-ref ref="EELFDebug" />\r
+    <includeCallerData>true</includeCallerData>\r
+  </appender>\r
\r
+  \r
+  <!-- ============================================================================ -->\r
+  <!--  EELF loggers -->\r
+  <!-- ============================================================================ -->\r
+  <logger name="com.att.eelf" level="debug" additivity="false">\r
+    <appender-ref ref="asyncEELF" />\r
+  </logger>\r
+  \r
+  <!--\r
+  <logger name="com.att.eelf.security" level="info" additivity="false">\r
+    <appender-ref ref="asyncEELFSecurity" />\r
+  </logger>\r
+  <logger name="com.att.eelf.perf" level="info" additivity="false">\r
+    <appender-ref ref="asyncEELFPerformance" />\r
+  </logger>\r
+  <logger name="com.att.eelf.server" level="info" additivity="false">\r
+    <appender-ref ref="asyncEELFServer" />\r
+  </logger>\r
+  <logger name="com.att.eelf.policy" level="info" additivity="false">\r
+    <appender-ref ref="asyncEELFPolicy" />\r
+  </logger>\r
+  -->\r
+  \r
+  <logger name="com.att.eelf.audit" level="info" additivity="false">\r
+    <appender-ref ref="asyncEELFAudit" />\r
+  </logger>\r
+  \r
+  <logger name="com.att.eelf.metrics" level="info" additivity="false">\r
+        <appender-ref ref="asyncEELFMetrics" />\r
+  </logger>\r
+    \r
+  <logger name="com.att.eelf.error" level="info" additivity="false">\r
+       <appender-ref ref="asyncEELFError" />\r
+  </logger>\r
+  \r
+   <logger name="com.att.eelf.debug" level="debug" additivity="false">\r
+        <appender-ref ref="asyncEELFDebug" />\r
+  </logger>\r
+  \r
+    \r
+  <root level="${VID_LOG_LEVEL}">\r
+    <appender-ref ref="asyncEELF" />\r
+  </root>\r
+\r
+</configuration>\r