🤖Simple logging framework

LoggerKit Pod version Build Status Maintainability Test Coverage

🤖 LoggerKit is logging framework that provides a format, log levels and multiple output destinations.


Using pre bundled logger class Logger, you can send log with log level like:

// Global context
let logger = Logger()
let stdout = StandardOut()
logger.register(destination: stdout)

// In some code
logger.debug("For debug")
logger.verbose("Something verbose")
logger.info("Something want to know")
logger.warning("Not expected, but not error")
logger.error("Something went wrong, fix this")


You can register custom destinations and log format. Log format belongs to destination. So you can set format by each destination.

// Create your log formatter
final class CustomLogFormatter: LogFormatterProtocol {
    func format(message: Any, level: LogLevel, context: LogContextProtocol) -> String {
        // Format message here

// Create you log destination
final class CustomLogDestination: LogDestinationProtocol {
    var formatter: LogFormatterProtocol

    init(formatter: LogFormatterProtocol = CustomLogFormatter()) {
        self.formatter = formatter

    func write(_ message: Any, level: LogLevel, context: LogContextProtocol) {
        let formatted = formatter.format(message, level: level, context: context)
        // You can write here how you want


Using CocoaPods:

pod 'LoggerKit'


In order to create Xcode project, run:

$ swift package generate-xcodeproj


$ bundle exec podspec_bump minor
$ pod lib lint
$ git push --tags
$ pod trunk push LoggerKit.podspec

CocoaPods Guides


  • Swift Tools 4.0.0
View More Packages from this Author


  • None
Last updated: Thu Dec 21 2023 20:56:18 GMT-1000 (Hawaii-Aleutian Standard Time)