<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements.  See the NOTICE file
distributed with this work for additional information
regarding copyright ownership.  The ASF licenses this file
to you 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.
-->
<configuration status="WARN">

  <appenders>

    <Console name="console" target="SYSTEM_OUT" follow="true">
      <PatternLayout pattern="%d{${LOG_DATEFORMAT_PATTERN:-yyyy-MM-dd HH:mm:ss.SSS}} %highlight{${LOG_LEVEL_PATTERN:-%5p}}{FATAL=red blink, ERROR=red, WARN=yellow bold, INFO=green, DEBUG=green bold, TRACE=blue} [%11.11t] %style{%-60.60c{60}}{cyan} : %m%n${LOG_EXCEPTION_CONVERSION_WORD:-%wEx}"/>
    </Console>

  </appenders>
  
  <loggers>
    
    <asyncLogger name="org.apache.syncope.core.persistence" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.springframework.orm" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.openjpa" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.ibatis" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    
    <asyncLogger name="org.apache.syncope.core.rest" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.springframework.web" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.http" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.cxf" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    
    <asyncLogger name="org.identityconnectors" additivity="false" level="DEBUG">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="net.tirasa.connid" additivity="false" level="DEBUG">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.syncope.core.provisioning.api.ConnIdBundleManager" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    
    <asyncLogger name="org.apache.syncope" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.syncope.core.provisioning" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.syncope.core.logic" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.springframework" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.quartz" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.flowable" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="liquibase" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.cocoon" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.fop" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.camel" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.wss4j" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.apache.xml" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.opensaml" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="io.swagger" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.reflections" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="org.elasticsearch" additivity="false" level="INFO">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="io.netty" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="com.zaxxer.hikari" additivity="false" level="ERROR">
      <appender-ref ref="console"/>
    </asyncLogger>
    
    <!-- To enable when setting 'mail.debug=true' in mail.properties -->
    <!--<asyncLogger name="org.apache.syncope.core.provisioning.java.job.notification" additivity="false" level="DEBUG">
      <appender-ref ref="console"/>
    </asyncLogger>
    <asyncLogger name="javax.mail" additivity="false" level="DEBUG">
      <appender-ref ref="console"/>
    </asyncLogger>-->
    
    <root level="INFO">
      <appender-ref ref="console"/>
    </root>
    
  </loggers>
</configuration>
