项目设置不同的微服务,可以统一改造logrus
在gin的main启动时,顺便启动InitLogger函数,初始化log
package logs
import (
log "github.com/sirupsen/logrus"
)
var Loggert *log.Logger
var TengineLogger = log.WithFields(log.Fields{"service": "tengine"})
var EviappLogger = log.WithFields(log.Fields{"service": "Eviapp"})
var MqtttoolLogger = log.WithFields(log.Fields{"service": "Eviapp"})
func InitLogger() {
Loggert = log.New()
Loggert.SetLevel(log.DebugLevel)
Loggert.SetFormatter(&log.TextFormatter{
ForceQuote:true, //键值对加引号
TimestampFormat:"2006-01-02 15:04:05", //时间格式
FullTimestamp:true,
})
TengineLogger = Loggert.WithFields(log.Fields{"service": "tengine"})
EviappLogger = Loggert.WithFields(log.Fields{"service": "Eviapp"})
MqtttoolLogger = Loggert.WithFields(log.Fields{"service": "mqtttool"})
}
使用时,不同的服务使用不同的实体
logs.MqtttoolLogger.Infof("TOPIC: %s\n", msg.Topic())
打印效果
INFO[2021-10-26 10:01:14] http请求返回:{"headers":{},"body":{"status":"1","msg":"success"},"statusCode":"OK","statusCodeValue":"200"} service="Eviapp"
INFO[2021-10-26 10:01:25] APP Received message: {"loginId":"SHHXTEST00014","5":"[{\"DeviceNumber\":\"5\",\"SECDSys.FValue1\":\"0.0\",\"configId\":\"401\",\"SECDSys.MSec\":\"4\",\"DUCtrl1.Int8\":\"552\",\"SECDSys.ParamtLeng\":\"2377\",\"config.int1\":\"2180\",\"day\":\"26\"}]","status":"1","extInfo":"888821043603"} from topic: Business/inspection/app/witsightInspection/SHHXTEST00014 service="Eviapp"
INFO[2021-10-26 10:01:25] message check ok!!!!!!888821043603 is equal 888821043603 service="Eviapp"
INFO[2021-10-26 10:01:44] extinfo:321514915339 service="Eviapp"
INFO[2021-10-26 10:01:44] extinfos:[{ExtInfo:538188047545 startTime:{wall:13859254128020565472 ext:126780823539 loc:0x1215a20}} {ExtInfo:321514915339 startTime:{wall:13859254192475534707 ext:186811283339 loc:0x1215a20}}] service="Eviapp"
网友评论