goProject/.svn/pristine/f5/f58250803d3356b5564ba6e3a702f2c4e7fb91bd.svn-base
2025-01-06 16:21:36 +08:00

54 lines
865 B
Plaintext

package impl_es
import (
"sync"
"time"
)
var (
logPool = sync.Pool{
New: func() interface{} {
return &EsLogModel{}
},
}
)
// 日志对象
type EsLogModel struct {
// 日志类型
LogType string
// 日志消息
Message string
// 程序标识
InnerId string
// Extendstr 扩展信息
Extendstr string
// 日志时间
CrTime time.Time
}
// newEsLogModel
// @description: 构造esLog对象
// parameter:
// @logType:日志类型
// @msg:日志内容
// @innerId:内部唯一id
// @extendCb:扩展信息回调方法
// return:
// @*EsLogModel:
func newEsLogModel(logType string, msg string, innerId string, extendCb func() string) *EsLogModel {
logObj := logPool.Get().(*EsLogModel)
logObj.CrTime = time.Now()
logObj.LogType = logType
logObj.Message = msg
logObj.InnerId = innerId
logObj.Extendstr = extendCb()
return logObj
}