This is a small logging system based of Swift Log which is a Swift logging API package.
UML
Main Components
LoggingSystem
The main façade. It can only booted once with a Logger instance.
Logger
This will call the LogHandler instance with the proper log level and other params provided by the caller.
LogHandler
A protocol which the log handlers must implement. It mainly contains a log function to pass the params.
MultiplexLogHandler
An implementation of the LogHandler protocol. Can pass the log message to other log handlers. Useful if you wish to log messages to local and remote systems using different handlers.
StreamLogHandler
An implementation of the LogHandler protocol that sends the messages to standard output or standard error.
Top comments (0)