优化日志落盘的代码

This commit is contained in:
lanrenwo 2022-11-01 22:03:13 +08:00
parent 2d375869df
commit c2ddb7331d
1 changed files with 13 additions and 8 deletions

View File

@ -51,8 +51,17 @@ func (p *AuditPayload) Add(userName string, pl *sessdata.Payload) {
} }
// 数据落盘 // 数据落盘
func (p *AuditPayload) Write(logs []dbdata.AccessAudit) { func (l *LogBatch) Write() {
_ = dbdata.AddBatch(logs) if len(l.Logs) == 0 {
return
}
_ = dbdata.AddBatch(l.Logs)
l.Reset()
}
// 清空数据
func (l *LogBatch) Reset() {
l.Logs = []dbdata.AccessAudit{}
} }
// 开启批量写入数据功能 // 开启批量写入数据功能
@ -84,14 +93,10 @@ func logAuditBatch() {
if !outTime.Stop() { if !outTime.Stop() {
<-outTime.C <-outTime.C
} }
auditPayload.Write(logBatch.Logs) logBatch.Write()
logBatch.Logs = []dbdata.AccessAudit{}
} }
case <-outTime.C: case <-outTime.C:
if len(logBatch.Logs) > 0 { logBatch.Write()
auditPayload.Write(logBatch.Logs)
logBatch.Logs = []dbdata.AccessAudit{}
}
} }
} }
} }