Documentation
¶
Index ¶
Constants ¶
View Source
const ( // 日志模块标识 LogModuleMonitor = "[监控模块]" // 配置文件名模板 ConfigNameAlertManager = "alertmanager_pool_%d_%s.yaml" ConfigNamePrometheus = "prometheus_scrape_pool_%d_%s.yaml" ConfigNameAlertRule = "prometheus_alert_rule_%d_%s.yaml" ConfigNameRecordRule = "prometheus_record_rule_%d_%s.yaml" )
View Source
const (
DefaultTaskTimeout = 5 * time.Minute
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AlertManagerConfigCache ¶
type AlertManagerConfigCache interface {
GetConfigByIP(ip string) string
GenerateMainConfig(ctx context.Context) error
GenerateMainConfigForPool(pool *model.MonitorAlertManagerPool) *altconfig.Config
GenerateRouteConfigForPool(ctx context.Context, pool *model.MonitorAlertManagerPool) ([]*altconfig.Route, []altconfig.Receiver)
}
AlertManagerConfigCache AlertManager配置缓存接口
func NewAlertManagerConfigCache ¶
func NewAlertManagerConfigCache( logger *zap.Logger, alertPoolDAO alertPoolDao.AlertManagerPoolDAO, alertSendDAO alertPoolDao.AlertManagerSendDAO, configDAO configDao.MonitorConfigDAO, batchManager *BatchConfigManager, redisClient redis.Cmdable, ) AlertManagerConfigCache
type AlertRuleConfigCache ¶
type AlertRuleConfigCache interface {
GetConfigByIP(ip string) string
GenerateMainConfig(ctx context.Context) error
GenerateConfigForPool(ctx context.Context, pool *model.MonitorScrapePool) map[string]string
}
func NewAlertRuleConfigCache ¶
func NewAlertRuleConfigCache( logger *zap.Logger, scrapePoolDAO scrapePoolDao.ScrapePoolDAO, alertRuleDAO alertRuleDao.AlertManagerRuleDAO, configDAO configDao.MonitorConfigDAO, batchManager *BatchConfigManager, redisClient redis.Cmdable, ) AlertRuleConfigCache
type BatchConfigManager ¶
type BatchConfigManager struct {
// contains filtered or unexported fields
}
func NewBatchConfigManager ¶
func NewBatchConfigManager(configDAO configDao.MonitorConfigDAO, logger *zap.Logger) *BatchConfigManager
func (*BatchConfigManager) BatchSaveConfigs ¶
func (b *BatchConfigManager) BatchSaveConfigs(ctx context.Context, configMap map[string]ConfigData) error
BatchSaveConfigs 批量保存配置到数据库
type MonitorCache ¶
func NewMonitorCache ¶
func NewMonitorCache( promConfig PrometheusConfigCache, alertManagerConfig AlertManagerConfigCache, alertRuleConfig AlertRuleConfigCache, alertRecordConfig RecordRuleConfigCache, l *zap.Logger, ) MonitorCache
type PrometheusConfigCache ¶
type PrometheusConfigCache interface {
GetConfigByIP(ip string) string
GenerateMainConfig(ctx context.Context) error
CreateBaseConfig(pool *model.MonitorScrapePool) (pc.Config, error)
GenerateScrapeConfigs(ctx context.Context, pool *model.MonitorScrapePool) []*pc.ScrapeConfig
ApplyHashMod(scrapeConfigs []*pc.ScrapeConfig, modNum, index int) []*pc.ScrapeConfig
}
func NewPrometheusConfigCache ¶
func NewPrometheusConfigCache( logger *zap.Logger, scrapePoolDAO scrapeJobDao.ScrapePoolDAO, scrapeJobDAO scrapeJobDao.ScrapeJobDAO, configDAO configDao.MonitorConfigDAO, batchManager *BatchConfigManager, redisClient redis.Cmdable, ) PrometheusConfigCache
type RecordGroup ¶
type RecordGroups ¶
type RecordGroups struct {
Groups []RecordGroup `yaml:"groups"`
}
type RecordRuleConfigCache ¶
type RecordRuleConfigCache interface {
GetConfigByIP(ip string) string
GenerateMainConfig(ctx context.Context) error
GenerateConfigForPool(ctx context.Context, pool *model.MonitorScrapePool) map[string]string
}
func NewRecordRuleConfigCache ¶
func NewRecordRuleConfigCache( logger *zap.Logger, scrapePoolDAO scrapePoolDao.ScrapePoolDAO, alertRecordDAO alertRecordDao.AlertManagerRecordDAO, configDAO configDao.MonitorConfigDAO, batchManager *BatchConfigManager, redisClient redis.Cmdable, ) RecordRuleConfigCache
type RuleGroups ¶
type RuleGroups struct {
Groups []RuleGroup `yaml:"groups"`
}
Click to show internal directories.
Click to hide internal directories.