bug
This commit is contained in:
45
stats.go
Normal file
45
stats.go
Normal file
@@ -0,0 +1,45 @@
|
||||
package main
|
||||
|
||||
import "sync"
|
||||
|
||||
var (
|
||||
spotsReceived int64
|
||||
spotsProcessed int64
|
||||
spotsRejected int64
|
||||
spotsMutex sync.RWMutex
|
||||
)
|
||||
|
||||
func IncrementSpotsReceived() {
|
||||
spotsMutex.Lock()
|
||||
spotsReceived++
|
||||
spotsMutex.Unlock()
|
||||
}
|
||||
|
||||
func IncrementSpotsProcessed() {
|
||||
spotsMutex.Lock()
|
||||
spotsProcessed++
|
||||
spotsMutex.Unlock()
|
||||
}
|
||||
|
||||
func IncrementSpotsRejected() {
|
||||
spotsMutex.Lock()
|
||||
spotsRejected++
|
||||
spotsMutex.Unlock()
|
||||
}
|
||||
|
||||
func GetSpotStats() (int64, int64, int64) {
|
||||
spotsMutex.RLock()
|
||||
defer spotsMutex.RUnlock()
|
||||
return spotsReceived, spotsProcessed, spotsRejected
|
||||
}
|
||||
|
||||
func GetSpotSuccessRate() float64 {
|
||||
spotsMutex.RLock()
|
||||
defer spotsMutex.RUnlock()
|
||||
|
||||
if spotsReceived == 0 {
|
||||
return 0.0
|
||||
}
|
||||
|
||||
return float64(spotsProcessed) / float64(spotsReceived) * 100.0
|
||||
}
|
||||
Reference in New Issue
Block a user