<?xml version="1.0" encoding="UTF-8"?>

<Configuration status="ALL" name="HIFWSLogger" packages="">
   
    <Appenders>

		<!-- this appender is used to log an ERROR condition to the database
		     logging table.
	    -->
        <JDBC name="databaseAppender" tableName="IFORLOG">
          <DataSource jndiName="jdbc/HIF-LoggerPU" />
          <Column name="IFORLOG_EVENT_DATE" isEventTimestamp="true" />
          <Column name="IFORLOG_LOG_LEVEL" pattern="%level" />
          <Column name="IFORLOG_LOGGER" pattern="%logger" />
          <Column name="IFORLOG_LOG_MESSAGE" pattern="%message" />
          <Column name="IFORLOG_THROWABLE" pattern="%ex{full}" />
        </JDBC>          


        <Console name="consoleAppender" target="SYSTEM_OUT">
            <PatternLayout pattern="%d{HH:mm:ss.SSS}   %logger - %msg%n" />
        </Console>

        <RollingFile name="rollingFileAppender" fileName="${sys:hif_log_home}HIF.log"
                     filePattern="${sys:hif_log_home}HIF-%d{MM-dd-yyyy}.log.zip" ignoreExceptions="false">
          <PatternLayout>
            <Pattern>[%d{yyyy-MM-dd HH:mm:ss:SSS}] [%-5p] [%t] [%c] [%m]%n</Pattern>
          </PatternLayout>
          <TimeBasedTriggeringPolicy />
        </RollingFile>

		
        <!--  This appender is used for processing auditing messages that get
		      sent to a JMS queue for processing.  Note that there are  two
			  different configurations required for jboss and weblogic.  Uncomment the appropriate
			  config for the target envrionment, and change the properties as needed.
		 -->
		 <!--              providerURL="http-remoting://127.0.0.1:11090" -->
		 <!-- JBOSS EAP Configuration-->
		 
		 
		<JMS name="HIFAuditAppender"
             destinationBindingName="jms/queue/HIFAuditQueue"
             factoryBindingName="jms/RemoteConnectionFactory" 
             providerURL="http-remoting://127.0.0.1:11090"
			 username="hcmuser"
			 password="passw0rd"
             factoryName="org.wildfly.naming.client.WildFlyInitialContextFactory" />
	   
        <Routing name="routingAppender">
            <Routes pattern="$${marker:}">
                <Route key="HIF_LOG" ref="rollingFileAppender" />
                <Route ref="rollingFileAppender" /> 
            </Routes>
        </Routing>
	
    </Appenders>
	
    <Loggers>
	    <!-- shuts up an annoying hibernate warning that can be ignored -->
		<Logger name="org.hibernate" additivity="false" level="ERROR"/>

        <!-- Audit -->
		
	    <Logger name="AuditLogger" level="OFF" additivity="false">
            <AppenderRef ref="HIFAuditAppender"/>
        </Logger>  
		
        <!-- Root -->
           <Root level="DEBUG">
             <AppenderRef ref="routingAppender"/>  
             <AppenderRef ref="consoleAppender" />  
             <AppenderRef ref="databaseAppender" level="ERROR" /> 
           </Root>
       </Loggers>
</Configuration>