Package org.apache.tools.ant

## Interface BuildLogger

- All Superinterfaces:
    `BuildListener`, `java.util.EventListener`
  All Known Implementing Classes:
    `AnsiColorLogger`, `BigProjectLogger`, `CommonsLoggingListener`, `DefaultLogger`, `MailLogger`, `NoBannerLogger`, `ProfileLogger`, `RecorderEntry`, `SilentLogger`, `SimpleBigProjectLogger`, `TimestampedLogger`, `XmlLogger`

      public interface BuildLogger
      extends BuildListener

  Interface used by Ant to log the build output. A build logger is a build listener which has the 'right' to send output to the ant log, which is usually `System.out` unless redirected by the `-logfile` option.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods Default Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `default int` | `getMessageOutputLevel()` |
    `void` | `setEmacsMode​(boolean emacsMode)` | Sets this logger to produce emacs (and other editor) friendly output.
    `void` | `setErrorPrintStream​(java.io.PrintStream err)` | Sets the output stream to which this logger is to send error messages.
    `void` | `setMessageOutputLevel​(int level)` | Sets the highest level of message this logger should respond to.
    `void` | `setOutputPrintStream​(java.io.PrintStream output)` | Sets the output stream to which this logger is to send its output.

    - ### Methods inherited from interface org.apache.tools.ant.BuildListener

      `buildFinished, buildStarted, messageLogged, targetFinished, targetStarted, taskFinished, taskStarted`

- - ### Method Detail

    - #### setMessageOutputLevel

          void setMessageOutputLevel​(int level)

      Sets the highest level of message this logger should respond to. Only messages with a message level lower than or equal to the given level should be written to the log.

      Constants for the message levels are in the `Project` class. The order of the levels, from least to most verbose, is `MSG_ERR`, `MSG_WARN`, `MSG_INFO`, `MSG_VERBOSE`, `MSG_DEBUG`.

      Parameters:
        `level` - the logging level for the logger.

    - #### getMessageOutputLevel

          default int getMessageOutputLevel()

      Returns:
        Returns the `currently set` message output level. The `default` implementation of this method returns `MSG_INFO`.
      Since:
        1.10.13

    - #### setOutputPrintStream

          void setOutputPrintStream​(java.io.PrintStream output)

      Sets the output stream to which this logger is to send its output.
      Parameters:
        `output` - The output stream for the logger. Must not be `null`.

    - #### setEmacsMode

          void setEmacsMode​(boolean emacsMode)

      Sets this logger to produce emacs (and other editor) friendly output.
      Parameters:
        `emacsMode` - `true` if output is to be unadorned so that emacs and other editors can parse files names, etc.

    - #### setErrorPrintStream

          void setErrorPrintStream​(java.io.PrintStream err)

      Sets the output stream to which this logger is to send error messages.
      Parameters:
        `err` - The error stream for the logger. Must not be `null`.