mirror of
https://github.com/Nanaloveyuki/BitLogger.git
synced 2026-07-24 00:42:18 +00:00
1.2 KiB
1.2 KiB
文件输出与轮转
文件输出面向需要本地持久化的 native 应用。跨端代码应先判断能力,并保留控制台回退方案。
检查能力
if !@log.native_files_supported() {
println("file logging is unavailable on this target")
return
}
构建可轮转文件 Logger
let config = @log.with_file_rotation(
@log.file(
"service.log",
min_level=@log.Level::Info,
target="service.file",
auto_flush=true,
) catch {
err => {
ignore(err)
return
}
},
1024 * 1024,
max_backups=3,
)
let logger = @log.build_logger(config)
logger.info("file logger ready")
ignore(logger.flush())
ignore(logger.file_close())
轮转阈值是活动文件的字节数,max_backups=3 保留备份链。应用有序退出时必须关闭文件 Logger。
运行仓库示例
moon run examples/file_rotation --target native