集成gin 、zap和lumberjack

本文介绍了如何在Go应用中整合gin框架、zap日志库以及lumberjack日志切割工具,详细阐述了配置和使用过程,帮助开发者实现高效、规范的日志管理和web服务构建。
摘要由CSDN通过智能技术生成
/**
 * @author:David Ma
 * @date:2021-02-01
 */

package mylog

import (
 "go.uber.org/zap"
 "go.uber.org/zap/zapcore"
 "gopkg.in/natefinch/lumberjack.v2"
 "os"
)

/**
 * 获取日志对象
 * filePath 日志文件路径
 * level 日志级别
 * maxSize 每个日志文件保存的最大尺寸 单位:M
 * maxBackups 日志文件最多保存多少个备份
 * maxAge 文件最多保存多少天
 * compress 是否压缩
 * serviceName 服务名
 */
func NewLogger(filePath string, level zapcore.Level, maxSize int,maxBackups int, maxAge int, compress bool, serviceName string) *zap.Logger{
 core := newCore(filePath, level, maxSize, maxBackups, maxAge, compress)
 //开启文件和行号
 caller := zap.AddCaller()
 //开启开发者模式,也就是stacktrace
 development := zap.Development()
 //往log中追加额外的信息(要求是<k,v>类型)
 opts := zap.Fields(zap.String("service",serviceName))
 logger := zap.New(core, caller, development, opts)
 return logger
}

/** 
  * 构建zapcore
 */
func newCore(filePath string, level zapcore.Level, maxSize int,maxBackups int, maxAge
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值