全局gin对象如何在子模块中修改Logger
说明
gin是通过中间件写日志, 日志对象是中间件的闭包变量。在use加载中间件完成之后,无法修改日志对象。 该如何办呢?
一般方法
以下是设置gin日志的方法
#方法一
gin.DefaultWriter = xxx
gin.DefaultErrorWriter = xxx
app := gin.Default()
app.Use(xxx)#方法二
app := gin.Default()
app.Use(gin.LoggerWithWriter(xxx))
当情况发生变化
app := gin.Default()被放在了顶层模块,并且加载了默认中间件
程序真正的log在子模块中初始化
在子模块中如何修改gin的日志?
解决办法
借助zapio.Writer对象,通过修改它的Log属性实现
# 顶层模块gin.go
gin.DefaultWriter =&zapio.Writer{Log:zap.L()}
gin.DefaultErrorWriter = gin.DefaultWriter
app := gin.Default()
app.use(xxx)#子模块xxx/sim/http.go
if gl, ok := gin.DefaultWriter.(*zapio.Writer);ok{gl.Log = gs.log.Desugar() #修改Log属性
}
佛說大乘無量壽莊嚴清淨平等覺經pdf
净土大经科注2014-doc
此生必看的科学实验-水知道答案
印光大师十念法(胡小林主讲第1集)
全局gin对象如何在子模块中修改Logger相关推荐
- MySQL中 修改语句使用的关键字是什么_表示修改一个数据库对象的SQL关键字是什么...
表示修改一个数据库对象的SQL关键字是:ALTER.在数据库中,可以使用"ALTER TABLE"语句来改变原有表的结构,可以在已有的表中添加.删除或修改列. 本教程操作环境:wi ...
- excel html modify,在Excel 2010中修改Series对象上的Z-index(Modify Z-index on Series object in Excel 2010)...
在Excel 2010中修改Series对象上的Z-index(Modify Z-index on Series object in Excel 2010) 我正在使用excel 2010. 我有一个 ...
- JavaScript - 在函数中修改参数值、用对象实例作为参数传递修改参数
<html><head><head><body><script language="javascript">// 在函数 ...
- javascript 无法修改 数组中对象_谈谈JavaScript中对象建立(Object)
在这篇文章中我将会着重说明如何创建JavaScript里的对象(Object). 对象(Object)是什么? 在开始介绍如何创建对象前,我们要知道对象是什么.对象(Object)简单地来说,就是一堆 ...
- SpringBoot2.3 修改响应头、添加更新token、解决在过滤器中修改失败
前言 使用Spring Boot开发项目的过程中,难免会遇到向响应头中写入一些信息,例如更新了的token,用户详情等信息.在请求头中添加,请求时就可以通过过滤器,拦截器等验证或者获得请求头传递的信息 ...
- js中修改this的指向方法整理
JavaScript(简称"JS") 是一种具有函数优先的轻量级,解释型或即时编译型的编程语言.虽然它是作为开发Web页面的脚本语言而出名,但是它也被用到了很多非浏览器环境中,Ja ...
- pb 修改数据窗口种指定字段位置_如何在PB数据窗口中修改数据---设置数据窗口的更新属性...
如何在 PB 数据窗口中修改数据 --- 设置数据窗口的更新属性 数据窗口对象非常强大的原因之一就是能够很容易地修改数据库.当用户修 改了数据窗口中的数据,插入了新的数据行或者删除了数据行以后,只要调 ...
- php对象持久化,在 Oracle 中完成 PHP5 对象的持久
在 Oracle 中完成 PHP5 对象的持久 作者:Barry McKay 在数据库驱动的 Web 应用程序中实现 PHP5 对象的持久,朝着完全面向对象的 Web 应用程序开发迈进重要的一步. 2 ...
- phonegap工程中修改app的名字
针对phonegap比较高的版本,我的是6.4.0. 在phonegap工程中,当添加了iOS和android平台或多个平台后,工程进行了开发,然后觉得app的名字想修改一下(比如在手机上显示的app ...
最新文章
- 给老婆普及计算机知识
- HDU1506 / POJ2339 Largest Rectangle in a Histogram 单调递减栈
- 一行行地读取输入行,将把最长的行打印出来
- 关闭eureka注册中心
- Ubuntu 安装Samba(Linux与Windows共享文件)
- Commons IO -- IOUtils
- 爬虫可视化点选配置工具之chrome插件简介
- Go根据url获取html代码
- 支持https协议么_你真的了解网址么?
- SQLServer-----SQLServer 2008 R2安装
- elipse下载及安装
- 文本转语音的接口(开放免费)
- 模糊c均值聚类及python实现
- mysql front连接_如何成功用MySQL-Front连接MySQL?
- 微信小程序getUserInfo返回拼音的解决办法
- 小程序云函数new Date()获取的时间和new Date().getDay()获取的时间不一致 / 云函数存入的时间不对 /小程序云开发配置时区
- 移植QT5.6到韦东山JZ2240嵌入式开发板(史上最最最最最详细的QT移植教程)
- Fabric 1.0源代码分析(22)Ledger #blkstorage(block文件存储)
- PBR标准化工作流程
- 2021-04-24全国艺术设计专业院校分析——华南地区