cron

package
v1.0.20250928075430 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 28, 2025 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OnDutyBatchSize                        = 100
	K8sMaxConcurrency                      = 5
	OnDutyCheckInterval                    = 10 * time.Second
	DefaultPrometheusConfigRefreshInterval = 15 * time.Second
	K8sCheckInterval                       = 60 * time.Second
	MaxRetries                             = 3
	RetryDelay                             = 5 * time.Second
)

Variables

View Source
var (
	ErrNoUsers = errors.New("值班组没有成员")
)

Functions

This section is empty.

Types

type BuiltinTaskDefinition

type BuiltinTaskDefinition struct {
	Name        string
	Description string
	Schedule    string // cron表达式,留空表示使用默认间隔
	TaskType    string // 任务标识符,用于启动对应的处理函数
	Enabled     bool   // 默认是否启用
}

BuiltinTaskDefinition 内置任务定义

func GetBuiltinTasks

func GetBuiltinTasks() []BuiltinTaskDefinition

GetBuiltinTasks 获取所有内置任务定义

type BuiltinTaskManager

type BuiltinTaskManager struct {
	// contains filtered or unexported fields
}

BuiltinTaskManager 内置任务管理器

func NewBuiltinTaskManager

func NewBuiltinTaskManager(logger *zap.Logger, cronDAO dao.CronJobDAO) *BuiltinTaskManager

NewBuiltinTaskManager 创建内置任务管理器

func (*BuiltinTaskManager) ForceInitializeBuiltinTasks

func (btm *BuiltinTaskManager) ForceInitializeBuiltinTasks(ctx context.Context) error

ForceInitializeBuiltinTasks 强制重新初始化内置任务(用于修复)

func (*BuiltinTaskManager) GetEnabledBuiltinTasks

func (btm *BuiltinTaskManager) GetEnabledBuiltinTasks(ctx context.Context) ([]*model.CronJob, error)

GetEnabledBuiltinTasks 获取启用的内置任务

func (*BuiltinTaskManager) InitializeBuiltinTasks

func (btm *BuiltinTaskManager) InitializeBuiltinTasks(ctx context.Context) error

InitializeBuiltinTasks 初始化内置任务到数据库

type CronManager

type CronManager interface {
	// 统一管理方法
	Start(ctx context.Context) error
	Stop(ctx context.Context) error
}

CronManager 统一的 Cron 管理器接口 - 整合系统内置任务和用户自定义任务

func NewUnifiedCronManager

func NewUnifiedCronManager(
	logger *zap.Logger,
	onDutyDao alert.AlertManagerOnDutyDAO,
	k8sDao dao.ClusterDAO,
	k8sClient client.K8sClient,
	clusterMgr manager.ClusterManager,
	promConfigCache cache.MonitorCache,
	cronScheduler *scheduler.CronScheduler,
	builtinTaskMgr *BuiltinTaskManager,
) CronManager

NewUnifiedCronManager 创建统一的 Cron 管理器

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL