golang日志框架zap简洁配置

本文介绍了Golang的zap日志框架,详细说明了如何进行简洁配置,包括错误信息独立记录、日志按天分割并限制保存天数,以及如何输出带有堆栈信息的错误日志。
摘要由CSDN通过智能技术生成

#golang日志框架zap简洁配置

##$ 前言

  • zap是uber开源的一款高性能日志组件框架

##$ 配置目标

  • 错误信息独立的文件记录
  • 日志按天分割,一天一个文件
  • 只保留近七天的日志
  • 错误日志输出堆栈

源码

package base

import (
	"fmt"
	rotatelogs "github.com/lestrrat-go/file-rotatelogs"
	"go.uber.org/zap"
	"go.uber.org/zap/zapcore"
	"io"
	"os"
	"time"
)

var Log *zap.SugaredLogger

const (
	output_dir = "./logs/"
	out_path   = "foot.log"
	err_path   = "foot.err"
)

func init() {
	_, err := os.Stat(output_dir)
	if err != nil {
		if os.IsNotExist(err) {
			err := os.Mkdir(output_dir, os.ModePerm)
			if err != nil {
				fmt.Printf("mkdir failed![%v]\n", err)
			}
		}
	}

	// 设置一些基本日志格式 具体含义还比较好理解,直接看zap源码也不难懂
	encoder := zapcore.NewConsoleEncoder(zapcore.EncoderConfig{
		MessageKey: "msg",
		LevelKey:   "level",
		TimeKey:  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值