mirror of
https://github.com/TeaOSLab/EdgeNode.git
synced 2025-11-19 04:10:30 +08:00
增加对数据库操作的统计命令:edge-node dbstat/减少几个不必要的查询操作
This commit is contained in:
30
internal/utils/dbs/query_stat.go
Normal file
30
internal/utils/dbs/query_stat.go
Normal file
@@ -0,0 +1,30 @@
|
||||
// Copyright 2022 Liuxiangchao iwind.liu@gmail.com. All rights reserved.
|
||||
|
||||
package dbs
|
||||
|
||||
type QueryStat struct {
|
||||
Query string
|
||||
CostMin float64
|
||||
CostMax float64
|
||||
|
||||
CostTotal float64
|
||||
Calls int64
|
||||
}
|
||||
|
||||
func NewQueryStat(query string) *QueryStat {
|
||||
return &QueryStat{
|
||||
Query: query,
|
||||
}
|
||||
}
|
||||
|
||||
func (this *QueryStat) AddCost(cost float64) {
|
||||
if this.CostMin == 0 || this.CostMin > cost {
|
||||
this.CostMin = cost
|
||||
}
|
||||
if this.CostMax == 0 || this.CostMax < cost {
|
||||
this.CostMax = cost
|
||||
}
|
||||
|
||||
this.CostTotal += cost
|
||||
this.Calls++
|
||||
}
|
||||
Reference in New Issue
Block a user