美文网首页
日志库使用zap

日志库使用zap

作者: voidFan | 来源:发表于2021-10-28 21:29 被阅读0次

lumberjack的Logger结构体说明

  • Filename 写日志的文件名称
  • MaxSize 每个日志文件长度的最大大小
  • MaxAge 日志保留的最大天数
  • MaxBackups 只保留最近多少个日志文件,用于控制程序总日志的大小
  • LocalTime 是否使用本地时间,默认使用UTC时间
  • Compress 是否压缩日志文件, 压缩方法 gzip
package main

import (
    "go.uber.org/zap"
    "go.uber.org/zap/zapcore"
    lumberjack "gopkg.in/natefinch/lumberjack.v2"
)
func initLogger(logpath string, loglevel string) *zap.Logger {
    hook := lumberjack.Logger{
        Filename:   logpath, // ⽇志⽂件路径
        MaxSize:    1024,    // megabytes
        MaxBackups: 3,       // 最多保留3个备份
        MaxAge:     7,       //days
        Compress:   true,    // 是否压缩 disabled by default
    }
    w := zapcore.AddSync(&hook)
    var level zapcore.Level
    switch loglevel {
    case "debug":
        level = zap.DebugLevel
    case "info":
        level = zap.InfoLevel
    case "error":
        level = zap.ErrorLevel
    default:
        level = zap.InfoLevel
    }
    encoderConfig := zap.NewProductionEncoderConfig()
    encoderConfig.EncodeTime = zapcore.ISO8601TimeEncoder
    core := zapcore.NewCore(
        zapcore.NewConsoleEncoder(encoderConfig),
        w,
        level,
    )
    logger := zap.New(core)
    logger.Info("DefaultLogger init success")
    return logger
}
func main() {
    logger := initLogger("all.log", "info")
    logger.Info("test log", zap.Int("line", 47))
    logger.Warn("testlog", zap.Int("line", 47))
}

相关文章

  • golang的zap怎么使用

    zap是一个高性能日志库,下面简单介绍一下zap的使用。 1.下载zap包 因为zap是uber开源的,zap内使...

  • golang高性能日志库zap配置示例

    golang高性能日志库zap配置示例 zap是uber开源的Go高性能日志库,gitlab地址 安装 请注意,z...

  • 日志库使用zap

    lumberjack的Logger结构体说明 Filename 写日志的文件名称 MaxSize 每个日志文件长...

  • 记ELK丢消息问题

    第一次用elk,应用内部日志使用uber的zap日志库打印,通过systemd系统服务启动,通过journalbe...

  • Go-zap

    本文先介绍了Go语言原生的日志库的使用,然后详细介绍了非常流行的Uber开源的zap日志库,同时介绍了如何搭配Lu...

  • 在Go语言项目中使用Zap日志库

    本文先介绍了Go语言原生的日志库的使用,然后详细介绍了非常流行的Uber开源的zap日志库,同时介绍了如何搭配Lu...

  • Zap日志库

    参考 https://github.com/uber-go/zap https://godoc.org/go.ub...

  • golang zaplog使用(转)

    zap 使用 uber 开源,zap 可以在控制面板、文档甚至发送数据到其他系统中,以此来记录日志。我们可以指定日...

  • golang日志框架zap简洁配置

    golang日志框架zap简洁配置 $ 前言 zap是uber开源的一款高性能日志组件框架 $ 配置目标 日志按天...

  • golang高性能日志库zap的使用

    本文作者:陈进坚个人博客:https://jian1098.github.io[https://jian1098....

网友评论

      本文标题:日志库使用zap

      本文链接:https://www.haomeiwen.com/subject/vncbaltx.html