代码拉取完成,页面将自动刷新
如题,感谢回答。
要达到多输出源的效果,目前的版本中有两种方法:
演示代码:
package main
import (
"io"
"os"
"time"
"github.com/FishGoddess/logit"
)
func main() {
// 第一种方式
// 使用 io.MultiWriter 包装器
way1()
// 第二种方式
// 使用 logit 的多处理器(推荐)
way2()
}
// 第一种方式
// 使用 io.MultiWriter 包装器
func way1() {
// 创建日志文件
// 这边需要使用 O_APPEND 追加模式打开,否则会覆盖原有的日志内容
// 为了演示方便,忽略错误
logFile, _ := os.OpenFile("E:/20200329.log", os.O_CREATE|os.O_WRONLY|os.O_APPEND, 0644)
defer logFile.Close()
// 创建文件日志记录器
logger := logit.NewLogger(io.MultiWriter(logFile, os.Stdout), logit.InfoLevel)
logger.Info("文件和控制台同时输出。。。")
}
// 第二种方式
// 使用 logit 的多处理器(推荐)
func way2() {
// 创建文件日志记录器
logger := logit.NewFileLogger("E:/20200329.log")
// 添加一个输出到控制台的日志处理器
// 注意这里需要保留原有的日志处理器,所以使用 AddHandlers 而不是 SetHandlers
// 如果需要输出为 Json 字符串形式,就使用 logit.HandlerOf("json")
logger.AddHandlers(logit.HandlerOf("default"))
logger.Info("文件和控制台同时输出。。。")
}
详情可以参考 handler 中的例子。
上述代码使用的 logit 版本是 v0.1.1-alpha。
希望这个回答可以帮助到您,谢谢反馈哈!
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。
登录 后才可以发表评论