2021-09-08 20:18:35 +00:00
|
|
|
package ping
|
2021-08-30 13:41:06 +00:00
|
|
|
|
|
|
|
import (
|
|
|
|
"os"
|
|
|
|
"time"
|
|
|
|
|
|
|
|
"github.com/MedzikUser/go-utils/common"
|
2021-11-10 13:38:54 +00:00
|
|
|
"github.com/medzikuser/go-pingbot/config"
|
2021-08-30 13:41:06 +00:00
|
|
|
)
|
|
|
|
|
|
|
|
var log = common.Log
|
|
|
|
|
|
|
|
func StopAfterPing() {
|
2021-09-05 11:20:19 +00:00
|
|
|
Cache()
|
2021-08-30 13:41:06 +00:00
|
|
|
num := ping()
|
|
|
|
|
|
|
|
// timeout
|
|
|
|
go func() {
|
|
|
|
timeout := config.Toml.Options.Stop_After_Ping_Timeout
|
|
|
|
if timeout == 0 {
|
|
|
|
return
|
|
|
|
}
|
|
|
|
|
|
|
|
time.Sleep(timeout * time.Second)
|
|
|
|
|
|
|
|
log.Warn("DB Size -> ", num)
|
|
|
|
log.Warn("Pinged -> ", Status.Success+Status.Error)
|
|
|
|
log.Warn("Success -> ", Status.Success)
|
|
|
|
log.Warn("Error -> ", Status.Error)
|
|
|
|
|
|
|
|
os.Exit(1)
|
|
|
|
}()
|
|
|
|
|
|
|
|
for {
|
|
|
|
if int64(num) == Status.Success+Status.Error {
|
|
|
|
log.Info("DB Size -> ", num)
|
|
|
|
log.Info("Pinged -> ", Status.Success+Status.Error)
|
|
|
|
log.Info("Success -> ", Status.Success)
|
|
|
|
log.Info("Error -> ", Status.Error)
|
|
|
|
|
|
|
|
break
|
|
|
|
}
|
2021-09-08 20:31:59 +00:00
|
|
|
|
|
|
|
time.Sleep(100 * time.Millisecond) // 0.1 second
|
2021-08-30 13:41:06 +00:00
|
|
|
}
|
|
|
|
}
|