mirror of https://github.com/statping/statping
modified Maintance routine to use time.After channel, not tick.
parent
1b68476b81
commit
bc45135301
|
@ -175,7 +175,7 @@ func InitApp() error {
|
||||||
if _, err := services.SelectAllServices(true); err != nil {
|
if _, err := services.SelectAllServices(true); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
go services.CheckServices()
|
services.CheckServices()
|
||||||
notifiers.InitNotifiers()
|
notifiers.InitNotifiers()
|
||||||
go database.Maintenance()
|
go database.Maintenance()
|
||||||
utils.SentryInit(&VERSION, core.App.AllowReports.Bool)
|
utils.SentryInit(&VERSION, core.App.AllowReports.Bool)
|
||||||
|
|
|
@ -23,17 +23,21 @@ func Maintenance() {
|
||||||
log.Infof("Database Cleanup runs every %s and will remove records older than %s", interval.String(), dur.String())
|
log.Infof("Database Cleanup runs every %s and will remove records older than %s", interval.String(), dur.String())
|
||||||
ticker := interval
|
ticker := interval
|
||||||
|
|
||||||
for range time.Tick(ticker) {
|
for {
|
||||||
deleteAfter := utils.Now().Add(-dur)
|
select {
|
||||||
|
case <-time.After(ticker):
|
||||||
|
deleteAfter := utils.Now().Add(-dur)
|
||||||
|
|
||||||
log.Infof("Deleting failures older than %s", deleteAfter.String())
|
log.Infof("Deleting failures older than %s", deleteAfter.String())
|
||||||
deleteAllSince("failures", deleteAfter)
|
deleteAllSince("failures", deleteAfter)
|
||||||
|
|
||||||
log.Infof("Deleting hits older than %s", deleteAfter.String())
|
log.Infof("Deleting hits older than %s", deleteAfter.String())
|
||||||
deleteAllSince("hits", deleteAfter)
|
deleteAllSince("hits", deleteAfter)
|
||||||
|
|
||||||
ticker = interval
|
ticker = interval
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// deleteAllSince will delete a specific table's records based on a time.
|
// deleteAllSince will delete a specific table's records based on a time.
|
||||||
|
|
|
@ -117,7 +117,7 @@ func processSetupHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
go services.CheckServices()
|
services.CheckServices()
|
||||||
|
|
||||||
core.App.Setup = true
|
core.App.Setup = true
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ import (
|
||||||
func CheckServices() {
|
func CheckServices() {
|
||||||
log.Infoln(fmt.Sprintf("Starting monitoring process for %v Services", len(allServices)))
|
log.Infoln(fmt.Sprintf("Starting monitoring process for %v Services", len(allServices)))
|
||||||
for _, s := range allServices {
|
for _, s := range allServices {
|
||||||
time.Sleep(250 * time.Millisecond)
|
time.Sleep(50 * time.Millisecond)
|
||||||
go ServiceCheckQueue(s, true)
|
go ServiceCheckQueue(s, true)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue