目录
目录README.md

swift-version swift-package-manager platform build-status license

AppLogger

Wrapper around Apple’s new Swift logging APIs, particularly Logger.

Provides a basic public / private logging functionality at a given level (e.g. debug (default)).

For more information, please refer to this WWDC20 video: Explore logging in Swift

Supported platforms

  • iOS 14+
  • macOS 11+ (BigSur+)
  • Mac Catalyst 14.0+
  • tvOS 14+
  • watchOS 7+
  • Xcode 12.0+

Usage

import AppLogger

// Create an instance of the "AppLogger with default options.
let logger = AppLogger()

// Log public information.
logger.log("iPhone screen size: \(screenSize)")

// Log private information.
logger.log("Username: \(username); Password: \(password)", isPrivate: true)

Defaults

public struct Defaults {
    public static let subsystem = Bundle.main.bundleIdentifier ?? "AppLogger"
    public static let category = "default"
    public static let isPrivate = false
}

Output

Xcode console

Xcode Sample

macOS Console app

⚠️ Make sure you have enabled Action / Include Info/Debug Messages in the Console app in order to see debug messages from your app.

Console App

macOS Console app: a note on .private

Keep in mind that private information will still be visible in the Console app as clear text if the device is attached to the debugger. Apparently this is by design.

Console App Private Debugger

Integration

Xcode

Use Xcode’s built-in support for SPM.

Package.swift

In your Package.swift, add AppLogger as a dependency:

dependencies: [
  .package(url: "https://github.com/backslash-f/applogger", from: "1.0.0")
],

Associate the dependency with your target:

targets: [
  .target(name: "App", dependencies: ["AppLogger"])
]

Run: swift build

关于
51.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

©Copyright 2023 CCF 开源发展委员会
Powered by Trustie& IntelliDE 京ICP备13000930号