Documentation ¶
Overview ¶
Package prometheus contains business logic of working with Prometheus.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AlertingRules ¶
type AlertingRules struct {
// contains filtered or unexported fields
}
AlertingRules contains all logic related to alerting rules files.
func NewAlertingRules ¶
func NewAlertingRules() *AlertingRules
NewAlertingRules creates new AlertingRules instance.
func (*AlertingRules) ReadRules ¶
func (s *AlertingRules) ReadRules() (string, error)
ReadRules reads current rules from FS.
func (*AlertingRules) RemoveRulesFile ¶
func (s *AlertingRules) RemoveRulesFile() error
RemoveRulesFile removes rules file from FS.
func (*AlertingRules) ValidateRules ¶
func (s *AlertingRules) ValidateRules(ctx context.Context, rules string) error
ValidateRules validates alerting rules.
func (*AlertingRules) WriteRules ¶
func (s *AlertingRules) WriteRules(rules string) error
WriteRules writes rules to file.
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service is responsible for interactions with Prometheus. It assumes the following:
- Prometheus APIs (including lifecycle) are accessible;
- Prometheus configuration and rule files are accessible;
- promtool is available.
func NewService ¶
func NewService(alertingRules *AlertingRules, configPath string, db *reform.DB, baseURL string) (*Service, error)
NewService creates new service.
func (*Service) RequestConfigurationUpdate ¶
func (svc *Service) RequestConfigurationUpdate()
RequestConfigurationUpdate requests Prometheus configuration update.
Click to show internal directories.
Click to hide internal directories.