gitlab

package
v5.10.0 Latest Latest
Warning

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

Go to latest
Published: Apr 19, 2024 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AlertBody

type AlertBody struct {
	Title                 string `json:"title,omitempty"`                   // The title of the alert.
	Description           string `json:"description,omitempty"`             // A high-level summary of the problem.
	StartTime             string `json:"start_time,omitempty"`              // The time of the alert. If none is provided, a current time is used.
	EndTime               string `json:"end_time,omitempty"`                // The resolution time of the alert. If provided, the alert is resolved.
	Service               string `json:"service,omitempty"`                 // The affected service.
	MonitoringTool        string `json:"monitoring_tool,omitempty"`         // The name of the associated monitoring tool.
	Hosts                 string `json:"hosts,omitempty"`                   // One or more hosts, as to where this incident occurred.
	Severity              string `json:"severity,omitempty"`                // The severity of the alert. Case-insensitive. Can be one of: critical, high, medium, low, info, unknown. Defaults to critical if missing or value is not in this list.
	Fingerprint           string `json:"fingerprint,omitempty"`             // The unique identifier of the alert. This can be used to group occurrences of the same alert.
	GitlabEnvironmentName string `json:"gitlab_environment_name,omitempty"` // The name of the associated GitLab environment. Required to display alerts on a dashboard.
}

type AlertProvider

type AlertProvider struct {
	WebhookURL       string `yaml:"webhook-url"`       // The webhook url provided by GitLab
	AuthorizationKey string `yaml:"authorization-key"` // The authorization key provided by GitLab

	// DefaultAlert is the default alert configuration to use for endpoints with an alert of the appropriate type
	DefaultAlert *alert.Alert `yaml:"default-alert,omitempty"`

	// Severity can be one of: critical, high, medium, low, info, unknown. Defaults to critical
	Severity string `yaml:"severity,omitempty"`

	// MonitoringTool overrides the name sent to gitlab. Defaults to gatus
	MonitoringTool string `yaml:"monitoring-tool,omitempty"`

	// EnvironmentName is the name of the associated GitLab environment. Required to display alerts on a dashboard.
	EnvironmentName string `yaml:"environment-name,omitempty"`

	// Service affected. Defaults to endpoint display name
	Service string `yaml:"service,omitempty"`
}

AlertProvider is the configuration necessary for sending an alert using GitLab

func (*AlertProvider) GetDefaultAlert

func (provider *AlertProvider) GetDefaultAlert() *alert.Alert

GetDefaultAlert returns the provider's default alert configuration

func (*AlertProvider) IsValid

func (provider *AlertProvider) IsValid() bool

IsValid returns whether the provider's configuration is valid

func (*AlertProvider) Send

func (provider *AlertProvider) Send(endpoint *core.Endpoint, alert *alert.Alert, result *core.Result, resolved bool) error

Send creates an issue in the designed RepositoryURL if the resolved parameter passed is false, or closes the relevant issue(s) if the resolved parameter passed is true.

Jump to

Keyboard shortcuts

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