swift-log-data

一个使用 SwiftData 存储日志的 swift-log 后端。

快速开始 - SwiftUI

  1. 在可能进行日志记录的场景中注册模型容器。

    这是一个将模型注册到主场景的示例。

    import DataLogger
    
    @main
    struct Example_App: App {
        var body: some Scene {
            WindowGroup {
                ContentView()
            }
            .logContainer()
        }
    }
  2. 引导启动 logger。

    import Logging
    // Initializer in Example_App
    init() {
        LoggingSystem.bootstrap(DataLogger.init)
    }
  3. 使用 swift-log API 进行日志记录。 更多详情,请查看 swift-log Github 仓库

读取日志

如果您正在使用 SwiftUI,您可以使用环境 logActor 来访问日志记录 actor。

@Environment(\.logActor) var logActor

func getLogs() async throws -> [Log] {
    try await logActor.fetch()
}

日志的模型存储位于 /Container/Library/Logs