# Interface Logger

All Superinterfaces:
  `org.slf4j.Logger`

public interface Logger extends org.slf4j.Logger

An extension to the SLF4J `Logger` interface, which adds the `quiet` and `lifecycle` log levels.

You can obtain a `Logger` instance using `Logging.getLogger(Class)` or `Logging.getLogger(String)`. A `Logger` instance is also available through `Project.getLogger()`, `Task.getLogger()` and `Script.getLogger()`.

CAUTION! Logging sensitive information (credentials, tokens, certain environment variables) above `debug(String, Object...)` level is a security vulnerability. See our recommendations for more information.

Since:
  0.8

- ## Field Summary

  ### Fields inherited from interface org.slf4j.Logger

  `ROOT_LOGGER_NAME`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `debug(String message, Object... objects)`
  Multiple-parameters friendly debug method
  `void`
  `info(String message, Object... objects)`
  Logs the given message at info log level.
  `boolean`
  `isEnabled(LogLevel level)`
  Returns true if the given log level is enabled for this logger.
  `boolean`
  `isLifecycleEnabled()`
  Returns true if lifecycle log level is enabled for this logger.
  `boolean`
  `isQuietEnabled()`
  Returns true if quiet log level is enabled for this logger.
  `void`
  `lifecycle(String message)`
  Logs the given message at lifecycle log level.
  `void`
  `lifecycle(String message, Object... objects)`
  Logs the given message at lifecycle log level.
  `void`
  `lifecycle(String message, Throwable throwable)`
  Logs the given message at lifecycle log level.
  `void`
  `log(LogLevel level, String message)`
  Logs the given message at the given log level.
  `void`
  `log(LogLevel level, String message, Object... objects)`
  Logs the given message at the given log level.
  `void`
  `log(LogLevel level, String message, Throwable throwable)`
  Logs the given message at the given log level.
  `void`
  `quiet(String message)`
  Logs the given message at quiet log level.
  `void`
  `quiet(String message, Object... objects)`
  Logs the given message at quiet log level.
  `void`
  `quiet(String message, Throwable throwable)`
  Logs the given message at quiet log level.

  ### Methods inherited from interface org.slf4j.Logger

  `atDebug, atError, atInfo, atLevel, atTrace, atWarn, debug, debug, debug, debug, debug, debug, debug, debug, debug, error, error, error, error, error, error, error, error, error, error, getName, info, info, info, info, info, info, info, info, info, isDebugEnabled, isDebugEnabled, isEnabledForLevel, isErrorEnabled, isErrorEnabled, isInfoEnabled, isInfoEnabled, isTraceEnabled, isTraceEnabled, isWarnEnabled, isWarnEnabled, makeLoggingEventBuilder, trace, trace, trace, trace, trace, trace, trace, trace, trace, trace, warn, warn, warn, warn, warn, warn, warn, warn, warn, warn`

- ## Method Details

  - ### isLifecycleEnabled

    boolean isLifecycleEnabled()
    Returns true if lifecycle log level is enabled for this logger.
    Since:
      0.8

  - ### debug

    void debug(String message, Object... objects)
    Multiple-parameters friendly debug method
    Specified by:
      `debug` in interface `org.slf4j.Logger`
    Parameters:
      `message` - the log message
      `objects` - the log message parameters

  - ### lifecycle

    void lifecycle(String message)
    Logs the given message at lifecycle log level.
    Parameters:
      `message` - the log message.
    Since:
      0.8

  - ### lifecycle

    void lifecycle(String message, Object... objects)
    Logs the given message at lifecycle log level.
    Parameters:
      `message` - the log message.
      `objects` - the log message parameters.
    Since:
      0.8

  - ### lifecycle

    void lifecycle(String message, Throwable throwable)
    Logs the given message at lifecycle log level.
    Parameters:
      `message` - the log message.
      `throwable` - the exception to log.
    Since:
      0.8

  - ### isQuietEnabled

    boolean isQuietEnabled()
    Returns true if quiet log level is enabled for this logger.
    Since:
      0.8

  - ### quiet

    void quiet(String message)
    Logs the given message at quiet log level.
    Parameters:
      `message` - the log message.
    Since:
      0.8

  - ### quiet

    void quiet(String message, Object... objects)
    Logs the given message at quiet log level.
    Parameters:
      `message` - the log message.
      `objects` - the log message parameters.
    Since:
      0.8

  - ### info

    void info(String message, Object... objects)
    Logs the given message at info log level.
    Specified by:
      `info` in interface `org.slf4j.Logger`
    Parameters:
      `message` - the log message.
      `objects` - the log message parameters.

  - ### quiet

    void quiet(String message, Throwable throwable)
    Logs the given message at quiet log level.
    Parameters:
      `message` - the log message.
      `throwable` - the exception to log.
    Since:
      0.8

  - ### isEnabled

    boolean isEnabled(LogLevel level)
    Returns true if the given log level is enabled for this logger.
    Since:
      0.8

  - ### log

    void log(LogLevel level, String message)
    Logs the given message at the given log level.
    Parameters:
      `level` - the log level.
      `message` - the log message.
    Since:
      0.8

  - ### log

    void log(LogLevel level, String message, Object... objects)
    Logs the given message at the given log level.
    Parameters:
      `level` - the log level.
      `message` - the log message.
      `objects` - the log message parameters.
    Since:
      0.8

  - ### log

    void log(LogLevel level, String message, Throwable throwable)
    Logs the given message at the given log level.
    Parameters:
      `level` - the log level.
      `message` - the log message.
      `throwable` - the exception to log.
    Since:
      0.8