<?xml version="1.0" encoding="UTF-8" ?>
<!-- #%L SAMOA %% Copyright (C) 2013 - 2014 Yahoo! Inc. %% 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. #L% -->

<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration debug="false">

  <appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
    <layout class="org.apache.log4j.PatternLayout">
      <param name="ConversionPattern" value="%d [%t] %-5p %c (%F:%L) - %m%n" />
    </layout>
  </appender>

  <root>
    <priority value="info" />
    <appender-ref ref="CONSOLE" />
  </root>
</log4j:configuration>
