<!--
  ============LICENSE_START=======================================================
   Copyright (C) 2020 AT&T Intellectual Property.
  ================================================================================
  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.

  SPDX-License-Identifier: Apache-2.0
  ============LICENSE_END=========================================================
-->

<configuration scan="true" scanPeriod="30 seconds" debug="false">

    <!--
        This is only used for testing and only a snapshot docker image is generated,
        thus it is not necessary for the messages to following the ONAP standard.
        Therefore, keeping it short so it's easier to wade through the output.

        Also sending all output to stdout instead of to a log file; it can be viewed
        via "docker logs" or captured by kubernetes.
     -->

    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <Pattern>%d %level  %msg%n</Pattern>
        </encoder>
    </appender>

    <root level="INFO">
        <appender-ref ref="STDOUT" />
    </root>

</configuration>
