DEV Community

loading...
Cover image for A Logging System

A Logging System

Camilo
πŸ±β€πŸ‘€
・1 min read

This is a small logging system based of Swift Log which is a Swift logging API package.

UML

Logging System 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.

Discussion (0)