Class SharedRateLimitingLogger


  • public class SharedRateLimitingLogger
    extends DelegatingLogger
    A rate-limiting logger that can be shared between multiple threads that use the same context key.
    • Constructor Detail

      • SharedRateLimitingLogger

        public SharedRateLimitingLogger​(Logger delegate,
                                        String context,
                                        double rateLimit)
        Parameters:
        delegate - Delegate logger.
        context - Shared context key.
        rateLimit - Rate limit (messages per second)
    • Method Detail

      • log

        public void log​(Level level,
                        String message)
        Specified by:
        log in class DelegatingLogger
        Parameters:
        level - log level.
        message - string to write to log.
      • log

        public void log​(Level level,
                        Supplier<String> messageSupplier)
        Overrides:
        log in class Logger
        Parameters:
        level - Log level.
        messageSupplier - A function, which when called, produces the desired log message.