Class RecordLogsHook.Builder

java.lang.Object
ru.vyarus.dropwizard.guice.test.log.RecordLogsHook.Builder
Enclosing class:
RecordLogsHook

public class RecordLogsHook.Builder extends Object
Log recorder configuration builder.
  • Constructor Details

    • Builder

      public Builder()
  • Method Details

    • recorderName

      public RecordLogsHook.Builder recorderName(String name)
      Custom name for logback appender. This might be used to better identify target appender (quite rarely required).
      Parameters:
      name - custom appender name, used for this recorder
      Returns:
      builder instance
    • loggers

      public RecordLogsHook.Builder loggers(Class<?>... typedLoggers)
      Class loggers to listen.
      Parameters:
      typedLoggers - loggers
      Returns:
      builder instance
    • loggers

      public RecordLogsHook.Builder loggers(String... loggers)
      Custom logger names, not based on class name. Useful for listening for entire packages.
      Parameters:
      loggers - string logger names to listen for
      Returns:
      builder instance
    • start

      public RecordedLogs start(org.slf4j.event.Level level)
      WARNING: if the current logger configuration is above the required threshold, then logger level would be updated! For example, if global logger level is set to WARN, but recorder level set to DEBUG then logger level would be reduced to receive all required events.

      Note: returning logs access object instead of recorder itself to simplify usage: in most cases, no additional attach/detach is required - only actual recorded logs access. Recorder object could be easily obtained with RecordedLogs.getRecorder().

      Also, note that logs recording starts just after this method call: registration of parent hook is required to properly re-bind recorders after dropwizard logs resets (dropwizard resets logging during startup).

      Parameters:
      level - required logging level
      Returns:
      recorded logs access object