1
0
Fork 0
mirror of https://github.com/Luzifer/webcheck.git synced 2024-11-08 06:30:02 +00:00

Add missing log cleanup

Signed-off-by: Knut Ahlers <knut@ahlers.me>
This commit is contained in:
Knut Ahlers 2018-07-23 16:20:50 +02:00
parent cc84933f05
commit 0ccbc80797
Signed by: luzifer
GPG key ID: DC2729FDD34BE99E

22
main.go
View file

@ -7,6 +7,7 @@ import (
"io/ioutil"
"net/http"
"os"
"path/filepath"
"regexp"
"strings"
"sync"
@ -149,6 +150,8 @@ func main() {
lastResult := newCheckResult(statusUnknown, "Uninitialized", 0)
go cleanupLogFiles()
for range time.Tick(cfg.Interval) {
var (
body *bytes.Buffer
@ -180,6 +183,25 @@ func main() {
}
}
func cleanupLogFiles() {
for {
if err := filepath.Walk(cfg.LogDir, func(path string, info os.FileInfo, err error) error {
if err != nil {
return err
}
if !info.IsDir() && time.Since(info.ModTime()) > cfg.LogRetention {
return os.Remove(path)
}
return nil
}); err != nil {
fmt.Println()
log.WithError(err).Error("Could not clean up logs")
}
}
}
func doCheck(url string, match *regexp.Regexp, responseBody io.Writer) *checkResult {
req, _ := http.NewRequest("GET", url, nil)