Documentation ¶
Index ¶
- Constants
- func CreateDisplayNameTpl(text string) (*template.Template, error)
- type Adapter
- type AlarmConfig
- type AlarmConfigProvider
- type BaseAlarmConfigProvider
- type BaseDataStorageConfigProvider
- type BaseRemediationConfigProvider
- type BaseTimezoneConfigProvider
- type BaseUserInterfaceConfigProvider
- type CanopsisConf
- type DataStorageConfig
- type DataStorageConfigProvider
- type Exchange
- type Queue
- type QueueBinding
- type RabbitMQConf
- type RemediationConfig
- type RemediationConfigProvider
- type ScheduledTime
- type SectionAlarm
- type SectionDataStorage
- type SectionFile
- type SectionGlobal
- type SectionImportCtx
- type SectionRemediation
- type SectionTimezone
- type TimezoneConfig
- type TimezoneConfigProvider
- type Updater
- type UserInterfaceAdapter
- type UserInterfaceConf
- type UserInterfaceConfigProvider
Constants ¶
View Source
const ( ConfigKeyName = "global_config" UserInterfaceKeyName = "user_interface" )
Some default values related to configuration
View Source
const ( AlarmBaggotTime = 60 * time.Second AlarmCancelAutosolveDelay = 60 * 60 * time.Second AlarmDefaultNameScheme = "{{ rand_string 2 }}-{{ rand_string 2 }}-{{ rand_string 2 }}" RemediationJobExecutorFetchTimeout = 30 * time.Second UserInterfaceMaxPbhEntities = 10000 )
Default config values
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Adapter ¶
type Adapter interface { // GetConfig return the whole config document GetConfig() (CanopsisConf, error) // UpsertConfig upsert a config in mongo. UpsertConfig(conf CanopsisConf) error }
Adapter to the concrete database
func NewAdapter ¶
type AlarmConfig ¶
type AlarmConfig struct { FlappingFreqLimit int FlappingInterval time.Duration StealthyInterval time.Duration BaggotTime time.Duration EnableLastEventDate bool CancelAutosolveDelay time.Duration DisplayNameScheme *template.Template OutputLength int // DisableActionSnoozeDelayOnPbh ignores Pbh state to resolve snoozed with Action alarm while is True DisableActionSnoozeDelayOnPbh bool // contains filtered or unexported fields }
type AlarmConfigProvider ¶
type AlarmConfigProvider interface {
Get() AlarmConfig
}
type BaseAlarmConfigProvider ¶
type BaseAlarmConfigProvider struct {
// contains filtered or unexported fields
}
func NewAlarmConfigProvider ¶
func NewAlarmConfigProvider(cfg CanopsisConf, logger zerolog.Logger) *BaseAlarmConfigProvider
func (*BaseAlarmConfigProvider) Get ¶
func (p *BaseAlarmConfigProvider) Get() AlarmConfig
func (*BaseAlarmConfigProvider) Update ¶
func (p *BaseAlarmConfigProvider) Update(cfg CanopsisConf) error
type BaseDataStorageConfigProvider ¶
type BaseDataStorageConfigProvider struct {
// contains filtered or unexported fields
}
func NewDataStorageConfigProvider ¶
func NewDataStorageConfigProvider(cfg CanopsisConf, logger zerolog.Logger) *BaseDataStorageConfigProvider
func (*BaseDataStorageConfigProvider) Get ¶
func (p *BaseDataStorageConfigProvider) Get() DataStorageConfig
func (*BaseDataStorageConfigProvider) Update ¶
func (p *BaseDataStorageConfigProvider) Update(cfg CanopsisConf) error
type BaseRemediationConfigProvider ¶
type BaseRemediationConfigProvider struct {
// contains filtered or unexported fields
}
func NewRemediationConfigProvider ¶
func NewRemediationConfigProvider(cfg CanopsisConf, logger zerolog.Logger) *BaseRemediationConfigProvider
func (*BaseRemediationConfigProvider) Get ¶
func (p *BaseRemediationConfigProvider) Get() RemediationConfig
func (*BaseRemediationConfigProvider) Update ¶
func (p *BaseRemediationConfigProvider) Update(cfg CanopsisConf) error
type BaseTimezoneConfigProvider ¶
type BaseTimezoneConfigProvider struct {
// contains filtered or unexported fields
}
func NewTimezoneConfigProvider ¶
func NewTimezoneConfigProvider(cfg CanopsisConf, logger zerolog.Logger) *BaseTimezoneConfigProvider
func (*BaseTimezoneConfigProvider) Get ¶
func (p *BaseTimezoneConfigProvider) Get() TimezoneConfig
func (*BaseTimezoneConfigProvider) Update ¶
func (p *BaseTimezoneConfigProvider) Update(cfg CanopsisConf) error
type BaseUserInterfaceConfigProvider ¶
type BaseUserInterfaceConfigProvider struct {
// contains filtered or unexported fields
}
func NewUserInterfaceConfigProvider ¶
func NewUserInterfaceConfigProvider(cfg UserInterfaceConf, logger zerolog.Logger) *BaseUserInterfaceConfigProvider
func (*BaseUserInterfaceConfigProvider) Get ¶
func (p *BaseUserInterfaceConfigProvider) Get() UserInterfaceConf
func (*BaseUserInterfaceConfigProvider) Update ¶
func (p *BaseUserInterfaceConfigProvider) Update(conf UserInterfaceConf) error
type CanopsisConf ¶
type CanopsisConf struct { ID string `bson:"_id,omitempty" toml:"omitempty"` Global SectionGlobal `bson:"global" toml:"global"` Alarm SectionAlarm `bson:"alarm" toml:"alarm"` Timezone SectionTimezone `bson:"timezone" toml:"timezone"` Remediation SectionRemediation `bson:"remediation" toml:"remediation"` ImportCtx SectionImportCtx `bson:"import_ctx" toml:"import_ctx"` File SectionFile `bson:"file" toml:"file"` DataStorage SectionDataStorage `bson:"data_storage" toml:"data_storage"` }
CanopsisConf represents a generic configuration object.
type DataStorageConfig ¶
type DataStorageConfig struct {
TimeToExecute *ScheduledTime
}
type DataStorageConfigProvider ¶
type DataStorageConfigProvider interface {
Get() DataStorageConfig
}
type QueueBinding ¶
type RabbitMQConf ¶
type RemediationConfig ¶
type RemediationConfigProvider ¶
type RemediationConfigProvider interface {
Get() RemediationConfig
}
type ScheduledTime ¶
func (ScheduledTime) String ¶
func (t ScheduledTime) String() string
type SectionAlarm ¶
type SectionAlarm struct { FlappingFreqLimit int `toml:"FlappingFreqLimit"` FlappingInterval int `toml:"FlappingInterval"` StealthyInterval int `toml:"StealthyInterval"` BaggotTime string `toml:"BaggotTime"` EnableLastEventDate bool `toml:"EnableLastEventDate"` CancelAutosolveDelay string `toml:"CancelAutosolveDelay"` DisplayNameScheme string `toml:"DisplayNameScheme"` OutputLength int `toml:"OutputLength"` // DisableActionSnoozeDelayOnPbh ignores Pbh state to resolve snoozed with Action alarm while is True DisableActionSnoozeDelayOnPbh bool `toml:"DisableActionSnoozeDelayOnPbh"` }
SectionAlarm ...
type SectionDataStorage ¶
type SectionDataStorage struct {
TimeToExecute string `toml:"TimeToExecute"`
}
type SectionFile ¶
type SectionGlobal ¶
type SectionGlobal struct { PrefetchCount int `toml:"PrefetchCount"` PrefetchSize int `toml:"PrefetchSize"` ReconnectTimeoutMilliseconds int `toml:"ReconnectTimeoutMilliseconds"` ReconnectRetries int `toml:"ReconnectRetries"` }
SectionGlobal ...
func (*SectionGlobal) GetReconnectTimeout ¶
func (s *SectionGlobal) GetReconnectTimeout() time.Duration
type SectionImportCtx ¶
type SectionRemediation ¶
type SectionRemediation struct {
JobExecutorFetchTimeoutSeconds int64 `toml:"JobExecutorFetchTimeoutSeconds"`
}
type SectionTimezone ¶
type SectionTimezone struct {
Timezone string `toml:"Timezone"`
}
type TimezoneConfig ¶
type TimezoneConfigProvider ¶
type TimezoneConfigProvider interface {
Get() TimezoneConfig
}
type Updater ¶
type Updater interface {
Update(CanopsisConf) error
}
type UserInterfaceAdapter ¶
type UserInterfaceAdapter interface {
GetConfig() (UserInterfaceConf, error)
}
func NewUserInterfaceAdapter ¶
func NewUserInterfaceAdapter(client mongo.DbClient) UserInterfaceAdapter
type UserInterfaceConf ¶
type UserInterfaceConf struct { IsAllowChangeSeverityToInfo bool `bson:"allow_change_severity_to_info"` // MaxMatchedItems need to warn user when number of items that match patterns is above this value MaxMatchedItems int `bson:"max_matched_items"` CheckCountRequestTimeout int `bson:"check_count_request_timeout"` }
UserInterfaceConf represents a user interface configuration object.
type UserInterfaceConfigProvider ¶
type UserInterfaceConfigProvider interface {
Get() UserInterfaceConf
}
Click to show internal directories.
Click to hide internal directories.