Class LogsSelector

  • Direct Known Subclasses:
    RecordedLogs

    public class LogsSelector
    extends java.lang.Object
    Log records selector object. To avoid tons of selection methods with different parameters, all selection methods return sub-selector object for further selections. At any selection step events could be obtained with events() or messages().
    Since:
    28.02.2025
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected java.util.List<ch.qos.logback.classic.spi.ILoggingEvent> list
      Events.
    • Constructor Summary

      Constructors 
      Constructor Description
      LogsSelector​(java.util.List<ch.qos.logback.classic.spi.ILoggingEvent> list)
      Create collector.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      LogsSelector containing​(java.lang.String messagePart)  
      int count()  
      boolean empty()  
      java.util.List<ch.qos.logback.classic.spi.ILoggingEvent> events()  
      boolean has​(java.lang.Class<?> logger)  
      boolean has​(java.lang.String loggerName)  
      boolean has​(org.slf4j.event.Level level)  
      ch.qos.logback.classic.spi.ILoggingEvent lastEvent()  
      java.lang.String lastMessage()  
      LogsSelector level​(org.slf4j.event.Level... levels)  
      LogsSelector logger​(java.lang.Class<?>... logger)  
      LogsSelector logger​(java.lang.String... loggerNames)  
      LogsSelector matching​(java.lang.String regex)  
      java.util.List<java.lang.String> messages()  
      java.util.List<java.lang.String> messages​(java.util.function.Function<ch.qos.logback.classic.spi.ILoggingEvent,​java.lang.String> mapper)  
      LogsSelector select​(java.util.function.Predicate<ch.qos.logback.classic.spi.ILoggingEvent> predicate)
      Generic event selector.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • list

        protected final java.util.List<ch.qos.logback.classic.spi.ILoggingEvent> list
        Events.
    • Constructor Detail

      • LogsSelector

        public LogsSelector​(java.util.List<ch.qos.logback.classic.spi.ILoggingEvent> list)
        Create collector.
        Parameters:
        list - events list
    • Method Detail

      • empty

        public boolean empty()
        Returns:
        true when no logs recorded
      • count

        public int count()
        Returns:
        count of log records
      • events

        public java.util.List<ch.qos.logback.classic.spi.ILoggingEvent> events()
        Returns:
        list of raw events
      • messages

        public java.util.List<java.lang.String> messages()
        Returns:
        formatted messages (without logger class, raw message)
      • messages

        public java.util.List<java.lang.String> messages​(java.util.function.Function<ch.qos.logback.classic.spi.ILoggingEvent,​java.lang.String> mapper)
        Parameters:
        mapper - mapper function
        Returns:
        messages after custom formatter
      • lastEvent

        public ch.qos.logback.classic.spi.ILoggingEvent lastEvent()
        Returns:
        the last recorded event
      • lastMessage

        public java.lang.String lastMessage()
        Returns:
        the last recorded message
      • has

        public boolean has​(java.lang.String loggerName)
        Parameters:
        loggerName - logger name
        Returns:
        true if logged messages found for required logger
      • has

        public boolean has​(java.lang.Class<?> logger)
        Parameters:
        logger - logger class
        Returns:
        true if logged messages found for required logger
      • has

        public boolean has​(org.slf4j.event.Level level)
        Parameters:
        level - required level
        Returns:
        true if logged messages found for required level
      • select

        public LogsSelector select​(java.util.function.Predicate<ch.qos.logback.classic.spi.ILoggingEvent> predicate)
        Generic event selector.
        Parameters:
        predicate - selection predicate
        Returns:
        selector for selected events
      • level

        public LogsSelector level​(org.slf4j.event.Level... levels)
        Parameters:
        levels - required levels
        Returns:
        sub selector with filtered logs from other levels
      • logger

        public LogsSelector logger​(java.lang.String... loggerNames)
        Parameters:
        loggerNames - logger name
        Returns:
        sub selector with filtered logs from other loggers
      • logger

        public LogsSelector logger​(java.lang.Class<?>... logger)
        Parameters:
        logger - logger class
        Returns:
        sub selector with filtered logs from other loggers
      • containing

        public LogsSelector containing​(java.lang.String messagePart)
        Parameters:
        messagePart - message to find in logged messages
        Returns:
        sub selector with log records containing provided string
      • matching

        public LogsSelector matching​(java.lang.String regex)
        Parameters:
        regex - regular expression
        Returns:
        sub selector with log records matching provided regex (matched by find)