thatfactory/applogger
Wrapper around Apple's new Swift logging APIs, particularly [Logger](https://developer.apple.com/documentation/os/logger).
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/thatfactory/applogger",
from: "0.1.0"
)
]Associate the dependency with your target:
targets: [
.target(
name: "YourTarget",
dependencies: [
.product(
name: "AppLogger",
package: "applogger"
)
]
)
]Run: swift build
Package Metadata
Repository: thatfactory/applogger
Default branch: main
README: README.md