Rippling Coding Interview: Extensible Logger Design with Multiple Handlers and Keyword Search

Design an extensible logger that supports multiple independent log handlers, such as console, truncation, and in-memory storage, while allowing new handlers to be added easily.

The logger should also support keyword search across searchable handlers, returning each matching log message only once even if it matches multiple keywords.

This problem focuses on designing a flexible logging system with multiple independent handlers and an easy extension mechanism for adding new ones. A good solution usually separates log routing from storage concerns, lets only searchable handlers participate in keyword queries, and deduplicates results so the same message is returned once even if it matches multiple keywords. It is a strong object-oriented design question that may also involve sets, collections, and indexing strategies for efficient search.

END
 0