SwiftBoxLogging

1.0.0

allegro/swiftbox-logging

What's New

2019-07-24T07:09:57Z

SwiftBoxLogging

Logging system for Swift/Vapor. Official https://github.com/apple/swift-log package should be used instead, this package is deprecated.

Build Status Swift 4.1 Linux MacOS

General

Usage

1. Import

import SwiftBoxLogging

2. Bootstrap

Logging should be bootstrapped before use (it defaults to PrintLogger). Bootstrap requires one parameter which is the logger factory. Logger factory must return Logger from Console/Logging package.

Logging.bootstrap({ name in Logger2(name) })

2. Usage

Create a logger instance:

fileprivate var logger = Logging.make(#file)

Log a message:

logger.verbose("verbose")
logger.debug("debug")
logger.info("info")
logger.warning("warning")
logger.error("error")
logger.fatal("fatal")

Custom Loggers

To create custom loggers your class must conform to Logger protocol from Console/Logging package.

Vapor

You can use same logging in Vapor and logging package:

private func configureLogging(_ config: inout Config, _ env: inout Environment, _ services: inout Services) {
    /// Register Logger2
    services.register(Logger2.self)

    switch env {
    case .production:
        config.prefer(Logger2.self, for: Logger.self)
        Logging.bootstrap({ name in Logger2(name) })
    default:
        config.prefer(PrintLogger.self, for: Logger.self)
        Logging.bootstrap({ _ in PrintLogger() })
    }
}

Description

  • Swift Tools 4.2.0
View More Packages from this Author

Dependencies

Last updated: Sat Oct 19 2024 23:47:46 GMT-0900 (Hawaii-Aleutian Daylight Time)