这是一个 SwiftLog 的日志记录后端,用于将消息发送到您选择的 Matrix 频道。
灵感来源于 LoggingTelegram。
将该软件包作为依赖项添加到您的清单文件
.package(url: "https://github.com/kiliankoe/swift-log-matrix.git", from: <#current#>)
不要忘记也将其列为您的目标的依赖项
.product(name: "LoggingMatrix", package: "swift-log-matrix"),
import Logging
import LoggingMatrix
LoggingSystem.bootstrap { label in
MultiplexLogHandler([
// Default stdout logger
StreamLogHandler.standardOutput(label: label),
MatrixLogHandler(
label: label,
homeserver: URL(string: "<#Homeserver URL#>")!,
roomID: "<#Room ID#>",
accessToken: "<#Access Token#>"
),
])
}
您需要三样东西来配置 Matrix 日志记录器以发送消息:您的 Homeserver URL(例如 https://matrix.org)、房间 ID(格式为 !xxxxxxxxxxxxxxx:homeserver.tld
)和一个访问令牌。
房间 ID 可以在大多数客户端的房间设置中找到,访问令牌在账户设置中找到(在 Element 中,它位于 设置 > 帮助与关于 > 高级)。
日志级别默认为仅发送 critical
级别的日志到 Matrix,您可以根据您的用例自由设置,但建议不要发送过多的日志到您的 Homeserver,特别是如果您不是自己运行 Homeserver 的话。
现在您可以像往常一样记录消息了!
logger.debug("Some debug message")
logger.error("Oh no, an error occurred!", metadata: ["important context": "some value here"])