一个日志协议,为不同类型的日志记录器提供通用的日志接口。此外,还提供了一个包含静态函数的类,用于在代码中记录日志。
Kitura 在其整个实现过程中使用此 API 进行日志记录。
swift-5.1-RELEASE
工具链(最新版本最低要求)swift-5.4-RELEASE
工具链(推荐)将 LoggerAPI
包添加到应用程序的 Package.swift
文件中的依赖项中。用最新的 LoggerAPI
版本 替换 "x.x.x"
.package(url: "https://github.com/Kitura/LoggerAPI.git", from: "x.x.x")
将 LoggerAPI
添加到您的目标的依赖项
.target(name: "example", dependencies: ["LoggerAPI"]),
import LoggerAPI
将日志消息添加到您的应用程序
Log.warning("This is a warning.")
Log.error("This is an error.")
您需要定义一个 logger
才能输出这些消息。您可能希望编写自己的 Logger
实现,或者您可以使用 HeliumLogger
将日志写入标准输出
import LoggerAPI
import HeliumLogger
let myLogger = HeliumLogger(.info)
Log.logger = myLogger
您可以在这里找到有关 HeliumLogger 的更多信息。
您可以通过设置 swiftLogger
属性,将日志消息定向到 swift-log 进行记录
import LoggerAPI
import Logging
let myLogger = Logging.Logger(label: "myLogger")
myLogger.logLevel = .notice
Log.swiftLogger = myLogger
如果同时设置了 logger
和 swiftLogger
,则日志消息将发送到两个日志后端。为 LoggerAPI Logger 和 swift-log Logger 配置的日志级别是独立的,因此可以用于以不同的级别记录日志。
请注意,由于 LoggerAPI 和 swift-log 定义的日志级别层次结构略有不同,因此定义了级别之间的映射。有关详细信息,请参阅 Log.isLogging()
的文档。
有关更多信息,请访问我们的API 参考。
我们喜欢谈论服务器端的 Swift 和 Kitura。加入我们的 Slack 与团队见面!
此库根据 Apache 2.0 获得许可。完整的许可证文本可在 LICENSE 中获得。