跨服务日志xlog(阿本)

用法

// 带context优先记录到 context,跟随请求一起输出
func Debug(ctx context.Context, params ...interface{}) 
func Info(ctx context.Context, params ...interface{}) 
func Error(ctx context.Context, params ...interface{}) 
func Warn(ctx context.Context, params ...interface{})

// 传统日志输出到控制台
func Debug2(params ...interface{})
func Info2(params ...interface{})
func Error2(params ...interface{}) 
func Warn2(params ...interface{}) 

// 废弃用法:
log.fromContext(ctx).Error(xxxx)
// OR
objLog := log.fromContext(ctx)
if objLog != nil {
  objLog.Error(xxxx)
}

支持各种格式参数,自动格式化+颜色,过滤无用属性

Warn2(filePb.FileSummary{
   Id:                   0,
   OwnerID:              0,
   Path:                 "",
   FileType:             0,
   Size_:                0,
   MimeType:             "",
})

image-20200710232822965

自动过滤,无用属性:

XXX_NoUnkeyedLiteral struct{}              `json:"-"`
XXX_unrecognized     []byte                `json:"-"`
XXX_sizecache        int32                 `json:"-"`

颜色仅仅在本地环境才有,入库到ES时,会去掉颜色。

日志通过context合并到请求日志

image-20200711090002445

Copyright © xinyan all right reserved,powered by Gitbook该文件修订时间: 2020-07-29 10:10:56

results matching ""

    No results matching ""