gonzalezreal / UnifiedLogging

SwiftLog unified logging backend

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

UnifiedLogHandler

Swift 5.1 Platforms Swift Package Manager Twitter: @gonzalezreal

UnifiedLogHandler is a SwiftLog backend that uses Apple's Unified Logging System.

You can instruct SwiftLog to use the UnifiedLogHandler backend as follows:

import Logging
import UnifiedLogHandler

LoggingSystem.bootstrap(UnifiedLogHandler.init)

The UnifiedLogHandler creates an OSLog for each Logger in your application or its libraries. It uses the application's bundle identifier and the Logger's label as the OSLog subsystem and category, respectively.

For example:

let logger = Logger(label: "APIClient")
logger.info("Something happened")

Prints the following output:

2019-12-15 18:22:10.357062+0100 MyApp[63417:16193919] [APIClient] Something happened

You can also use metadata when logging. For example:

logger.info("Something happened", metadata: ["foo": ["bar": "baz"]])

Prints the following output:

2019-12-15 18:34:01.424326+0100 MyApp[63587:16235713] [APIClient] Something happened
├─ Metadata
│ foo: ["bar": "baz"]

Installation

Using the Swift Package Manager

Add UnifiedLogHandler as a dependency to your Package.swift file. For more information, see the Swift Package Manager documentation.

.package(url: "https://github.com/gonzalezreal/UnifiedLogHandler", from: "1.0.0")

Help & Feedback

  • Open an issue if you need help, if you found a bug, or if you want to discuss a feature request.
  • Open a PR if you want to make some change to UnifiedLogHandler.
  • Contact @gonzalezreal on Twitter.

About

SwiftLog unified logging backend

License:MIT License


Languages

Language:Swift 100.0%