<?xml version="1.0" encoding="UTF-8"?>
<!--
    Copyright (C) 2018-2026 Velocity Contributors

    This program is free software: you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation, either version 3 of the License, or
    (at your option) any later version.

    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
    GNU General Public License for more details.

    You should have received a copy of the GNU General Public License
    along with this program.  If not, see <https://www.gnu.org/licenses/>.
-->

<!-- Disable shutdown hook, because we have our own -->
<Configuration status="warn" shutdownHook="disable">
  <Appenders>
    <TerminalConsole name="TerminalConsole">
      <PatternLayout>
        <LoggerNamePatternSelector
          defaultPattern="%highlightError{[%d{HH:mm:ss} %level] [%logger]: %msg%n%xEx}">
          <!-- Velocity doesn't need a prefix -->
          <PatternMatch key="com.velocitypowered."
            pattern="%highlightError{[%d{HH:mm:ss} %level]: %msg%n%xEx}"/>
        </LoggerNamePatternSelector>
      </PatternLayout>
    </TerminalConsole>
    <RollingRandomAccessFile name="File" fileName="logs/latest.log"
      filePattern="logs/%d{yyyy-MM-dd}-%i.log.gz"
      immediateFlush="false">
      <PatternLayout
        pattern="[%d{HH:mm:ss}] [%t/%level] [%logger]: %stripAnsi{%msg}%n"/>
      <Policies>
        <TimeBasedTriggeringPolicy/>
        <OnStartupTriggeringPolicy/>
      </Policies>
    </RollingRandomAccessFile>
  </Appenders>

  <Loggers>
    <Root level="info">
      <AppenderRef ref="TerminalConsole"/>
      <AppenderRef ref="File"/>
    </Root>
  </Loggers>
</Configuration>