A logger interface. It is inspired from the interface and behavior of the org.slf4j.Logger API.

  import { loggerForName } from "apprt-core/Logger";
const LOG = loggerForName("mybundle/MyFile");
LOG.debug("Component started");
  import { loggerForName } from "apprt-core/Logger";
const LOG = loggerForName("mybundle/MyFile");
const name = "Xyz";
LOG.debug("Component '{}' started", name);
// -> logs "Component 'Xyz' started"
  import { loggerForName } from "apprt-core/Logger";
const LOG = loggerForName("mybundle/MyFile");

if (LOG.isDebugEnabled()){
LOG.debug("did something");
}
  import { loggerForName } from "apprt-core/Logger";
const LOG = loggerForName("mybundle/MyFile");
const LOGWithPrefix = LOG.withPrefix("[my prefix]");
LOGWithPrefix.info("My Message");
// -> logs "[my prefix] My Message"
interface Logger {
    debug(msg: string, ...args: any[]): void;
    error(msg: string, ...args: any[]): void;
    error(error: Error): void;
    getLevel(): LogLevel;
    getName(): string;
    info(msg: string, ...args: any[]): void;
    isDebugEnabled(): boolean;
    isErrorEnabled(): boolean;
    isInfoEnabled(): boolean;
    isLevelEnabled(level: LogLevel): boolean;
    isWarnEnabled(): boolean;
    warn(msg: string, ...args: any[]): void;
    warn(error: Error): void;
    withPrefix(prefix: string): Logger;
}

Methods

  • Log a message at level DEBUG.

    The message may contain one or more placeholders '{}', which are replaced by the string value of the given arguments.

    Note that placeholders are always replaced and can not be escaped at the moment.

    If the list of arguments is longer than the number of placeholders in the given message, each remaining argument is logged in a separate log statement.

    Parameters

    • msg: string

      the message, may contain '{}' placeholders.

    • ...args: any[]

      arguments filled into the placeholder or directly logged.

    Returns void

  • Log a message at level ERROR.

    Similar to debug except for the used log level.

    Parameters

    • msg: string

      the message, may contain '{}' placeholders.

    • ...args: any[]

      arguments filled into the placeholder or directly logged.

    Returns void

  • Convenience method to log an error (without an additional message) as an error.

    Parameters

    • error: Error

      the error to log

    Returns void

  • Lookup the current logger level.

    Returns LogLevel

  • Get the current logger name.

    Returns string

  • Log a message at level INFO.

    Similar to debug except for the used log level.

    Parameters

    • msg: string

      the message, may contain '{}' placeholders.

    • ...args: any[]

      arguments filled into the placeholder or directly logged.

    Returns void

  • Is DEBUG level enabled for this logger.

    Returns boolean

  • Is ERROR level enabled for this logger.

    Returns boolean

  • Is INFO level enabled for this logger.

    Returns boolean

  • Is given level enabled for this logger.

    Parameters

    Returns boolean

  • Is WARN level enabled for this logger.

    Returns boolean

  • Log a message at level WARN.

    Similar to debug except for the used log level.

    Parameters

    • msg: string

      the message, may contain '{}' placeholders.

    • ...args: any[]

      arguments filled into the placeholder or directly logged.

    Returns void

  • Convenience method to log an error (without an additional message) as a warning.

    Parameters

    • error: Error

      the error to log

    Returns void

  • Creates a new Logger, which will prefix each log message with the given prefix.

    Parameters

    • prefix: string

      a prefix

    Returns Logger

      const LOG = loggerForName("mybundle/MyFile");
    const LOGWithPrefix = LOG.withPrefix("[my prefix]");
    LOGWithPrefix.info("My Message");
    // -> logs "[my prefix] My Message"