修改zerolog使log输出的文件名可以在goland里自动定位--技巧 - Go语言中文社区

修改zerolog使log输出的文件名可以在goland里自动定位--技巧


如何自动定位文件

最近发现goland会自动识别输出的文件或者url,但是有时候又识别不出来,折腾了一下,发现原来要求文件路径或url两边要有空格

改造zerolog

既然如此,那么让我们来改造一下zerolog,跟踪了一下代码,发现原来写都在io.writer里,于是复制出这个文件,然后增加了一个格式化代码
359523-20180521212148189-730819198.png
完整的代码在github

增加颜色输出

可以使用这个库,github.com/mattn/go-colorable,输出到它的colorable.NewColorableStdout里面去

测试结果

package main

import (
    "github.com/mattn/go-colorable"
    "github.com/rs/zerolog"
    "github.com/dwdcth/consoleEx"
)

func main() {
    out := consoleEx.ConsoleWriterEx{Out: colorable.NewColorableStdout()}
    zerolog.CallerSkipFrameCount = 2  //这里根据实际,另外获取的是Msg调用处的文件路径和行号
    logger := zerolog.New(out).With().Caller().Timestamp().Logger()

    logger.Info().Msg("info")
    logger.Debug().Msg("debug")
}

359523-20180521211619804-371568569.png

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/weixin_33802505/article/details/85991356
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-04-18 19:40:51
  • 阅读 ( 1619 )
  • 分类:Goland

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢