diff --git a/cve-vulner-manager/conf/product_app.conf b/cve-vulner-manager/conf/product_app.conf index 4fff6db4ed55c867e60cd2800658ba91515a109a..59807cd79665c1f46bb4f942c434ed5a8fa62111 100644 --- a/cve-vulner-manager/conf/product_app.conf +++ b/cve-vulner-manager/conf/product_app.conf @@ -88,7 +88,7 @@ test = 0/10 * * * * * gittokenflag = 2 issueoath = * * */20 * * * genexcelflag = 1 -genexcel = 0 15 15 * * * +genexcel = 0 0 3 * * 0 days = -30 prcnum = 50 printlogflag = 2 diff --git a/cve-vulner-manager/models/cve.go b/cve-vulner-manager/models/cve.go index 14400da0c0ca255fdcc357b0dd9063a81f4605fc..0d2f83eecf201e98cb8e0b29038ae97e65518b1a 100644 --- a/cve-vulner-manager/models/cve.go +++ b/cve-vulner-manager/models/cve.go @@ -958,7 +958,10 @@ func GetVulnCenterByCid(cve *VulnCenter, field ...string) error { func GetCanExportVulnCenterData() (data []VulnCenter, err error) { o := orm.NewOrm() - sql := fmt.Sprintf(`SELECT * from cve_vuln_center WHERE is_export IN (0,2,3) and organizate_id = 1`) + sql := fmt.Sprintf( + `SELECT * from cve_vuln_center WHERE is_export IN (0,2,3) and organizate_id = 1 and create_time > %s`, + time.Now().AddDate(-1, 0, 0).Format(time.DateTime), + ) _, err = o.Raw(sql).QueryRows(&data) logs.Info("GetCanExportVulnCenterData, err: ", err) return diff --git a/cve-vulner-manager/taskhandler/cve.go b/cve-vulner-manager/taskhandler/cve.go index 74947683429553f32bcb46cf67bc3c9036ee3d02..f62ca7525bbea288162bdcae6e81fbc4d87087a7 100644 --- a/cve-vulner-manager/taskhandler/cve.go +++ b/cve-vulner-manager/taskhandler/cve.go @@ -2603,35 +2603,33 @@ func FilterCveExported() { logs.Error(err) return } - for _, v := range data { - ewg.Add(1) - go func(center models.VulnCenter) { - defer ewg.Done() - exist, result := GetCveSecurityNotice(center.CveNum, center.PackName, true) - if exist && result.Result.IsFixed() { - // 1640966400 -- 2022-01-01 - if t := util.TimeStrToInt(result.Result.UpdateTime, ""); t != 0 && t <= 1640966400 { - dbLock.Lock() - center.IsExport = 1 - models.UpdateVulnCenter(¢er, "is_export") - dbLock.Unlock() - } else if b := IsAllProductReleased(center.CveNum, center.PackName); b { - dbLock.Lock() - center.IsExport = 1 - models.UpdateVulnCenter(¢er, "is_export") - dbLock.Unlock() - } - } else { - if center.IsExport == 2 { - dbLock.Lock() - center.IsExport = 3 - models.UpdateVulnCenter(¢er, "is_export") - dbLock.Unlock() - } + + const beginOf2022 = 1640966400 + for _, center := range data { + exist, result := GetCveSecurityNotice(center.CveNum, center.PackName, true) + if exist && result.Result.IsFixed() { + // 1640966400 -- 2022-01-01 + if t := util.TimeStrToInt(result.Result.UpdateTime, ""); t != 0 && t <= beginOf2022 { + dbLock.Lock() + center.IsExport = 1 + models.UpdateVulnCenter(¢er, "is_export") + dbLock.Unlock() + } else if b := IsAllProductReleased(center.CveNum, center.PackName); b { + dbLock.Lock() + center.IsExport = 1 + models.UpdateVulnCenter(¢er, "is_export") + dbLock.Unlock() } - }(v) + } else { + const noNeedSync = 2 + if center.IsExport == noNeedSync { + dbLock.Lock() + center.IsExport = 3 + models.UpdateVulnCenter(¢er, "is_export") + dbLock.Unlock() + } + } } - ewg.Wait() logs.Info("Excluding the cve data that has been released SA ends...") }