数据有更改时发送通知

This commit is contained in:
刘祥超
2021-08-08 15:47:48 +08:00
parent c893de8af7
commit 473a2db335
40 changed files with 548 additions and 185 deletions

View File

@@ -2,6 +2,7 @@ package tasks
import (
"github.com/TeaOSLab/EdgeAPI/internal/db/models"
"github.com/TeaOSLab/EdgeCommon/pkg/nodeconfigs"
"github.com/iwind/TeaGo/dbs"
"github.com/iwind/TeaGo/logs"
"time"
@@ -42,9 +43,11 @@ func (this *NodeTaskExtractor) Loop() error {
// 这里不解锁是为了让任务N秒钟之内只运行一次
err = models.SharedNodeTaskDAO.ExtractAllClusterTasks(nil)
if err != nil {
return err
for _, role := range []string{nodeconfigs.NodeRoleNode, nodeconfigs.NodeRoleDNS} {
err = models.SharedNodeTaskDAO.ExtractAllClusterTasks(nil, role)
if err != nil {
return err
}
}
return nil

View File

@@ -2,7 +2,6 @@ package tasks
import (
"github.com/TeaOSLab/EdgeAPI/internal/db/models"
"github.com/TeaOSLab/EdgeAPI/internal/db/models/nameservers"
"github.com/TeaOSLab/EdgeAPI/internal/utils/numberutils"
"github.com/TeaOSLab/EdgeCommon/pkg/nodeconfigs"
"github.com/TeaOSLab/EdgeCommon/pkg/systemconfigs"
@@ -59,7 +58,7 @@ func (this *NSNodeMonitorTask) loop() error {
return err
}
clusters, err := nameservers.SharedNSClusterDAO.FindAllEnabledClusters(nil)
clusters, err := models.SharedNSClusterDAO.FindAllEnabledClusters(nil)
if err != nil {
return err
}
@@ -73,11 +72,11 @@ func (this *NSNodeMonitorTask) loop() error {
return nil
}
func (this *NSNodeMonitorTask) monitorCluster(cluster *nameservers.NSCluster) error {
func (this *NSNodeMonitorTask) monitorCluster(cluster *models.NSCluster) error {
clusterId := int64(cluster.Id)
// 检查离线节点
inactiveNodes, err := nameservers.SharedNSNodeDAO.FindAllNotifyingInactiveNodesWithClusterId(nil, clusterId)
inactiveNodes, err := models.SharedNSNodeDAO.FindAllNotifyingInactiveNodesWithClusterId(nil, clusterId)
if err != nil {
return err
}
@@ -90,7 +89,7 @@ func (this *NSNodeMonitorTask) monitorCluster(cluster *nameservers.NSCluster) er
}
// 修改在线状态
err = nameservers.SharedNSNodeDAO.UpdateNodeStatusIsNotified(nil, int64(node.Id))
err = models.SharedNSNodeDAO.UpdateNodeStatusIsNotified(nil, int64(node.Id))
if err != nil {
return err
}