zoukankan      html  css  js  c++  java
  • 修改zerolog使log输出的文件名可以在goland里自动定位--技巧

    如何自动定位文件

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

    改造zerolog

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

    完整的代码在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")
    }
    
    

  • 相关阅读:
    Pod镜像拉取策略imagePullPolicy
    部署helm服务
    查看k8s中etcd数据
    k8s RBAC实践
    部署k8s集群监控Heapster
    编译k8s1.11 kube-apiserver源码
    阿里云跨地域访问私网
    阿里云ECS搭建harbor1.6.1仓库
    JavaScript
    前端之网络协议、浏览器
  • 原文地址:https://www.cnblogs.com/xdao/p/golang_zerolog.html
Copyright © 2011-2022 走看看