Add the task service. Ready to tidy the go modules.

This commit is contained in:
lishuang
2020-07-11 15:25:31 +08:00
parent 096eb7c73e
commit dbeef1cee4
8 changed files with 52 additions and 213 deletions

View File

@ -4,6 +4,7 @@ import (
"github.com/eyebluecn/tank/code/core"
"github.com/eyebluecn/tank/code/tool/result"
"github.com/eyebluecn/tank/code/tool/util"
jsoniter "github.com/json-iterator/go"
"net/http"
"strconv"
)
@ -143,11 +144,21 @@ func (this *PreferenceController) EditPreviewConfig(writer http.ResponseWriter,
func (this *PreferenceController) EditScanConfig(writer http.ResponseWriter, request *http.Request) *result.WebResult {
scanConfig := request.FormValue("scanConfig")
scanConfigStr := request.FormValue("scanConfig")
preference := this.preferenceDao.Fetch()
preference.ScanConfig = scanConfig
scanConfig := &ScanConfig{}
err := jsoniter.ConfigCompatibleWithStandardLibrary.Unmarshal([]byte(scanConfigStr), &scanConfig)
if err != nil {
panic(err)
}
//validate the scan config.
if scanConfig.Enable {
//validate cron.
}
preference = this.preferenceService.Save(preference)

View File

@ -64,14 +64,3 @@ func (this *Preference) FetchScanConfig() *ScanConfig {
return m
}
}
//set the scan config
func (this *Preference) SetScanConfig(scanConfigJson string) {
b, err := jsoniter.ConfigCompatibleWithStandardLibrary.Marshal(scanConfigJson)
if err != nil {
panic(err)
}
this.ScanConfig = string(b)
}

View File

@ -2,7 +2,7 @@ package rest
import (
"github.com/eyebluecn/tank/code/core"
"github.com/robfig/cron"
"github.com/robfig/cron/v3"
)
// system tasks service
@ -31,37 +31,37 @@ func (this *TaskService) Init() {
//init the clean footprint task.
func (this *TaskService) InitCleanFootprintTask() {
this.logger.Info("[cron job] Every day 00:10 delete Footprint data of 8 days ago.")
expression := "0 10 0 * * ?"
cronJob := cron.New()
err := cronJob.AddFunc(expression, this.footprintService.CleanOldData)
entryId, err := cronJob.AddFunc(expression, this.footprintService.CleanOldData)
core.PanicError(err)
cronJob.Start()
this.logger.Info("[cron job] Every day 00:10 delete Footprint data of 8 days ago. entryId = %d", entryId)
}
//init the elt task.
func (this *TaskService) InitEtlTask() {
this.logger.Info("[cron job] Everyday 00:05 ETL dashboard data.")
expression := "0 5 0 * * ?"
cronJob := cron.New()
err := cronJob.AddFunc(expression, this.dashboardService.Etl)
entryId, err := cronJob.AddFunc(expression, this.dashboardService.Etl)
core.PanicError(err)
cronJob.Start()
this.logger.Info("[cron job] Everyday 00:05 ETL dashboard data. entryId = %d", entryId)
}
//init the scan task.
func (this *TaskService) InitScanTask() {
this.logger.Info("[cron job] Everyday 00:05 ETL dashboard data.")
expression := "0 5 0 * * ?"
cronJob := cron.New()
err := cronJob.AddFunc(expression, this.dashboardService.Etl)
entryId, err := cronJob.AddFunc(expression, this.dashboardService.Etl)
core.PanicError(err)
cronJob.Start()
this.logger.Info("[cron job] Everyday 00:05 ETL dashboard data. entryId = %d", entryId)
}
func (this *TaskService) Bootstrap() {