mirror of
https://github.com/astaxie/beego.git
synced 2024-11-27 02:31:28 +00:00
38 lines
985 B
Go
38 lines
985 B
Go
package store
|
|
|
|
import (
|
|
"github.com/siddontang/go/sync2"
|
|
)
|
|
|
|
type Stat struct {
|
|
GetNum sync2.AtomicInt64
|
|
GetMissingNum sync2.AtomicInt64
|
|
GetTotalTime sync2.AtomicDuration
|
|
PutNum sync2.AtomicInt64
|
|
DeleteNum sync2.AtomicInt64
|
|
IterNum sync2.AtomicInt64
|
|
IterSeekNum sync2.AtomicInt64
|
|
IterCloseNum sync2.AtomicInt64
|
|
SnapshotNum sync2.AtomicInt64
|
|
SnapshotCloseNum sync2.AtomicInt64
|
|
BatchNum sync2.AtomicInt64
|
|
BatchCommitNum sync2.AtomicInt64
|
|
BatchCommitTotalTime sync2.AtomicDuration
|
|
TxNum sync2.AtomicInt64
|
|
TxCommitNum sync2.AtomicInt64
|
|
TxCloseNum sync2.AtomicInt64
|
|
CompactNum sync2.AtomicInt64
|
|
CompactTotalTime sync2.AtomicDuration
|
|
}
|
|
|
|
func (st *Stat) statGet(v interface{}, err error) {
|
|
st.GetNum.Add(1)
|
|
if v == nil && err == nil {
|
|
st.GetMissingNum.Add(1)
|
|
}
|
|
}
|
|
|
|
func (st *Stat) Reset() {
|
|
*st = Stat{}
|
|
}
|