io_prometheus_alertmanager

package
v0.0.0-...-7890aa2 Latest Latest
Warning

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

Go to latest
Published: Oct 8, 2015 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Overview

Package io_prometheus_alertmanager is a generated protocol buffer package.

It is generated from these files:

config.proto

It has these top-level messages:

PagerDutyConfig
EmailConfig
PushoverConfig
HipChatConfig
SlackConfig
FlowdockConfig
OpsGenieConfig
WebhookConfig
AmazonSnsConfig
NotificationConfig
Filter
AggregationRule
InhibitRule
AlertManagerConfig

Index

Constants

View Source
const Default_AggregationRule_RepeatRateSeconds int32 = 7200
View Source
const Default_AmazonSnsConfig_SendResolved bool = false
View Source
const Default_EmailConfig_SendResolved bool = false
View Source
const Default_FlowdockConfig_SendResolved bool = false
View Source
const Default_HipChatConfig_Color string = "purple"
View Source
const Default_HipChatConfig_ColorResolved string = "green"
View Source
const Default_HipChatConfig_Notify bool = false
View Source
const Default_HipChatConfig_SendResolved bool = false
View Source
const Default_OpsGenieConfig_SendResolved bool = false
View Source
const Default_PushoverConfig_SendResolved bool = false
View Source
const Default_SlackConfig_Color string = "warning"
View Source
const Default_SlackConfig_ColorResolved string = "good"
View Source
const Default_SlackConfig_SendResolved bool = false
View Source
const Default_WebhookConfig_SendResolved bool = false

Variables

View Source
var HipChatConfig_MessageFormat_name = map[int32]string{
	0: "HTML",
	1: "TEXT",
}
View Source
var HipChatConfig_MessageFormat_value = map[string]int32{
	"HTML": 0,
	"TEXT": 1,
}

Functions

This section is empty.

Types

type AggregationRule

type AggregationRule struct {
	// Filters that define which alerts are matched by this AggregationRule.
	Filter []*Filter `protobuf:"bytes,1,rep,name=filter" json:"filter,omitempty"`
	// How many seconds to wait before resending a notification for a specific alert.
	RepeatRateSeconds *int32 `protobuf:"varint,2,opt,name=repeat_rate_seconds,def=7200" json:"repeat_rate_seconds,omitempty"`
	// Notification configuration to use for this AggregationRule, referenced by
	// their name.
	NotificationConfigName *string `protobuf:"bytes,3,opt,name=notification_config_name" json:"notification_config_name,omitempty"`
	XXX_unrecognized       []byte  `json:"-"`
}

Grouping and notification setting definitions for alerts.

func (*AggregationRule) GetFilter

func (m *AggregationRule) GetFilter() []*Filter

func (*AggregationRule) GetNotificationConfigName

func (m *AggregationRule) GetNotificationConfigName() string

func (*AggregationRule) GetRepeatRateSeconds

func (m *AggregationRule) GetRepeatRateSeconds() int32

func (*AggregationRule) ProtoMessage

func (*AggregationRule) ProtoMessage()

func (*AggregationRule) Reset

func (m *AggregationRule) Reset()

func (*AggregationRule) String

func (m *AggregationRule) String() string

type AlertManagerConfig

type AlertManagerConfig struct {
	// Aggregation rule definitions.
	AggregationRule []*AggregationRule `protobuf:"bytes,1,rep,name=aggregation_rule" json:"aggregation_rule,omitempty"`
	// Notification configuration definitions.
	NotificationConfig []*NotificationConfig `protobuf:"bytes,2,rep,name=notification_config" json:"notification_config,omitempty"`
	// List of alert inhibition rules.
	InhibitRule      []*InhibitRule `protobuf:"bytes,3,rep,name=inhibit_rule" json:"inhibit_rule,omitempty"`
	XXX_unrecognized []byte         `json:"-"`
}

Global alert manager configuration.

func (*AlertManagerConfig) GetAggregationRule

func (m *AlertManagerConfig) GetAggregationRule() []*AggregationRule

func (*AlertManagerConfig) GetInhibitRule

func (m *AlertManagerConfig) GetInhibitRule() []*InhibitRule

func (*AlertManagerConfig) GetNotificationConfig

func (m *AlertManagerConfig) GetNotificationConfig() []*NotificationConfig

func (*AlertManagerConfig) ProtoMessage

func (*AlertManagerConfig) ProtoMessage()

func (*AlertManagerConfig) Reset

func (m *AlertManagerConfig) Reset()

func (*AlertManagerConfig) String

func (m *AlertManagerConfig) String() string

type AmazonSnsConfig

type AmazonSnsConfig struct {
	// SNS Topic ARN.
	TopicArn *string `protobuf:"bytes,1,opt,name=topic_arn" json:"topic_arn,omitempty"`
	// Notify when resolved
	SendResolved     *bool  `protobuf:"varint,2,opt,name=send_resolved,def=0" json:"send_resolved,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

Configuration for notification via Amazon SNS.

func (*AmazonSnsConfig) GetSendResolved

func (m *AmazonSnsConfig) GetSendResolved() bool

func (*AmazonSnsConfig) GetTopicArn

func (m *AmazonSnsConfig) GetTopicArn() string

func (*AmazonSnsConfig) ProtoMessage

func (*AmazonSnsConfig) ProtoMessage()

func (*AmazonSnsConfig) Reset

func (m *AmazonSnsConfig) Reset()

func (*AmazonSnsConfig) String

func (m *AmazonSnsConfig) String() string

type EmailConfig

type EmailConfig struct {
	// Email address to notify.
	Email *string `protobuf:"bytes,1,opt,name=email" json:"email,omitempty"`
	// Notify when resolved.
	SendResolved     *bool  `protobuf:"varint,2,opt,name=send_resolved,def=0" json:"send_resolved,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

Configuration for notification via mail.

func (*EmailConfig) GetEmail

func (m *EmailConfig) GetEmail() string

func (*EmailConfig) GetSendResolved

func (m *EmailConfig) GetSendResolved() bool

func (*EmailConfig) ProtoMessage

func (*EmailConfig) ProtoMessage()

func (*EmailConfig) Reset

func (m *EmailConfig) Reset()

func (*EmailConfig) String

func (m *EmailConfig) String() string

type Filter

type Filter struct {
	// The regex matching the label name.
	NameRe *string `protobuf:"bytes,1,opt,name=name_re" json:"name_re,omitempty"`
	// The regex matching the label value.
	ValueRe          *string `protobuf:"bytes,2,opt,name=value_re" json:"value_re,omitempty"`
	XXX_unrecognized []byte  `json:"-"`
}

A regex-based label filter used in aggregations.

func (*Filter) GetNameRe

func (m *Filter) GetNameRe() string

func (*Filter) GetValueRe

func (m *Filter) GetValueRe() string

func (*Filter) ProtoMessage

func (*Filter) ProtoMessage()

func (*Filter) Reset

func (m *Filter) Reset()

func (*Filter) String

func (m *Filter) String() string

type FlowdockConfig

type FlowdockConfig struct {
	// Flowdock flow API token.
	ApiToken *string `protobuf:"bytes,1,opt,name=api_token" json:"api_token,omitempty"`
	// Flowdock from_address.
	FromAddress *string `protobuf:"bytes,2,opt,name=from_address" json:"from_address,omitempty"`
	// Flowdock flow tags.
	Tag []string `protobuf:"bytes,3,rep,name=tag" json:"tag,omitempty"`
	// Notify when resolved.
	SendResolved     *bool  `protobuf:"varint,4,opt,name=send_resolved,def=0" json:"send_resolved,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

Configuration for notification via Flowdock.

func (*FlowdockConfig) GetApiToken

func (m *FlowdockConfig) GetApiToken() string

func (*FlowdockConfig) GetFromAddress

func (m *FlowdockConfig) GetFromAddress() string

func (*FlowdockConfig) GetSendResolved

func (m *FlowdockConfig) GetSendResolved() bool

func (*FlowdockConfig) GetTag

func (m *FlowdockConfig) GetTag() []string

func (*FlowdockConfig) ProtoMessage

func (*FlowdockConfig) ProtoMessage()

func (*FlowdockConfig) Reset

func (m *FlowdockConfig) Reset()

func (*FlowdockConfig) String

func (m *FlowdockConfig) String() string

type HipChatConfig

type HipChatConfig struct {
	// HipChat auth token, (https://www.hipchat.com/docs/api/auth).
	AuthToken *string `protobuf:"bytes,1,opt,name=auth_token" json:"auth_token,omitempty"`
	// HipChat room id, (https://www.hipchat.com/rooms/ids).
	RoomId *int32 `protobuf:"varint,2,opt,name=room_id" json:"room_id,omitempty"`
	// Color of message when triggered.
	Color *string `protobuf:"bytes,3,opt,name=color,def=purple" json:"color,omitempty"`
	// Color of message when resolved.
	ColorResolved *string `protobuf:"bytes,5,opt,name=color_resolved,def=green" json:"color_resolved,omitempty"`
	// Should this message notify or not.
	Notify *bool `protobuf:"varint,4,opt,name=notify,def=0" json:"notify,omitempty"`
	// Notify when resolved.
	SendResolved *bool `protobuf:"varint,6,opt,name=send_resolved,def=0" json:"send_resolved,omitempty"`
	// Prefix to be put in front of the message (useful for @mentions, etc.).
	Prefix           *string                      `protobuf:"bytes,7,opt,name=prefix,def=" json:"prefix,omitempty"`
	MessageFormat    *HipChatConfig_MessageFormat `` /* 141-byte string literal not displayed */
	XXX_unrecognized []byte                       `json:"-"`
}

Configuration for notification via HipChat.

func (*HipChatConfig) GetAuthToken

func (m *HipChatConfig) GetAuthToken() string

func (*HipChatConfig) GetColor

func (m *HipChatConfig) GetColor() string

func (*HipChatConfig) GetColorResolved

func (m *HipChatConfig) GetColorResolved() string

func (*HipChatConfig) GetMessageFormat

func (m *HipChatConfig) GetMessageFormat() HipChatConfig_MessageFormat

func (*HipChatConfig) GetNotify

func (m *HipChatConfig) GetNotify() bool

func (*HipChatConfig) GetPrefix

func (m *HipChatConfig) GetPrefix() string

func (*HipChatConfig) GetRoomId

func (m *HipChatConfig) GetRoomId() int32

func (*HipChatConfig) GetSendResolved

func (m *HipChatConfig) GetSendResolved() bool

func (*HipChatConfig) ProtoMessage

func (*HipChatConfig) ProtoMessage()

func (*HipChatConfig) Reset

func (m *HipChatConfig) Reset()

func (*HipChatConfig) String

func (m *HipChatConfig) String() string

type HipChatConfig_MessageFormat

type HipChatConfig_MessageFormat int32

Format the message as "html" or "text".

const (
	HipChatConfig_HTML HipChatConfig_MessageFormat = 0
	HipChatConfig_TEXT HipChatConfig_MessageFormat = 1
)
const Default_HipChatConfig_MessageFormat HipChatConfig_MessageFormat = HipChatConfig_HTML

func (HipChatConfig_MessageFormat) Enum

func (HipChatConfig_MessageFormat) String

func (*HipChatConfig_MessageFormat) UnmarshalJSON

func (x *HipChatConfig_MessageFormat) UnmarshalJSON(data []byte) error

type InhibitRule

type InhibitRule struct {
	// The set of Filters which define the group of source alerts (which inhibit
	// the target alerts).
	SourceFilter []*Filter `protobuf:"bytes,1,rep,name=source_filter" json:"source_filter,omitempty"`
	// The set of Filters which define the group of target alerts (which are
	// inhibited by the source alerts).
	TargetFilter []*Filter `protobuf:"bytes,2,rep,name=target_filter" json:"target_filter,omitempty"`
	// A set of label names whose label values need to be identical in source and
	// target alerts in order for the inhibition to take effect.
	MatchOn          []string `protobuf:"bytes,3,rep,name=match_on" json:"match_on,omitempty"`
	XXX_unrecognized []byte   `json:"-"`
}

An InhibitRule specifies that a class of (source) alerts should inhibit notifications for another class of (target) alerts if all specified matching labels are equal between the two alerts. This may be used to inhibit alerts from sending notifications if their meaning is logically a subset of a higher-level alert.

For example, if an entire job is down, there is little sense in sending a notification for every single instance of said job being down. This could be expressed as the following inhibit rule:

inhibit_rule {
  # Select all source alerts that are candidates for being inhibitors. All
  # supplied source filters have to match in order to select a source alert.
  source_filter: {
    name_re: "alertname"
    value_re: "JobDown"
  }
  source_filter: {
    name_re: "service"
    value_re: "api"
  }

  # Select all target alerts that are candidates for being inhibited. All
  # supplied target filters have to match in order to select a target alert.
  target_filter: {
    name_re: "alertname"
    value_re: "InstanceDown"
  }
  target_filter: {
    name_re: "service"
    value_re: "api"
  }

  # A target alert only actually inhibits a source alert if they match on
  # these labels. I.e. the alerts needs to fire for the same job in the same
  # zone for the inhibit to take effect between them.
  match_on: "job"
  match_on: "zone"
}

In this example, when JobDown is firing for

JobDown{zone="aa",job="test",service="api"}

...it would inhibit an InstanceDown alert for

InstanceDown{zone="aa",job="test",instance="1",service="api"}

However, an InstanceDown alert for another zone:

{zone="ab",job="test",instance="1",service="api"}

...would still fire.

func (*InhibitRule) GetMatchOn

func (m *InhibitRule) GetMatchOn() []string

func (*InhibitRule) GetSourceFilter

func (m *InhibitRule) GetSourceFilter() []*Filter

func (*InhibitRule) GetTargetFilter

func (m *InhibitRule) GetTargetFilter() []*Filter

func (*InhibitRule) ProtoMessage

func (*InhibitRule) ProtoMessage()

func (*InhibitRule) Reset

func (m *InhibitRule) Reset()

func (*InhibitRule) String

func (m *InhibitRule) String() string

type NotificationConfig

type NotificationConfig struct {
	// Name of this NotificationConfig. Referenced from AggregationRule.
	Name *string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"`
	// Zero or more PagerDuty notification configurations.
	PagerdutyConfig []*PagerDutyConfig `protobuf:"bytes,2,rep,name=pagerduty_config" json:"pagerduty_config,omitempty"`
	// Zero or more email notification configurations.
	EmailConfig []*EmailConfig `protobuf:"bytes,3,rep,name=email_config" json:"email_config,omitempty"`
	// Zero or more pushover notification configurations.
	PushoverConfig []*PushoverConfig `protobuf:"bytes,4,rep,name=pushover_config" json:"pushover_config,omitempty"`
	// Zero or more hipchat notification configurations.
	HipchatConfig []*HipChatConfig `protobuf:"bytes,5,rep,name=hipchat_config" json:"hipchat_config,omitempty"`
	// Zero or more slack notification configurations.
	SlackConfig []*SlackConfig `protobuf:"bytes,6,rep,name=slack_config" json:"slack_config,omitempty"`
	// Zero or more Flowdock notification configurations.
	FlowdockConfig []*FlowdockConfig `protobuf:"bytes,7,rep,name=flowdock_config" json:"flowdock_config,omitempty"`
	// Zero or more generic web hook notification configurations.
	WebhookConfig []*WebhookConfig `protobuf:"bytes,8,rep,name=webhook_config" json:"webhook_config,omitempty"`
	// Zero or more OpsGenieConfig notification configurations.
	OpsgenieConfig []*OpsGenieConfig `protobuf:"bytes,9,rep,name=opsgenie_config" json:"opsgenie_config,omitempty"`
	// Zero or more Amazon SNS notification configurations.
	AmazonSnsConfig  []*AmazonSnsConfig `protobuf:"bytes,10,rep,name=amazon_sns_config" json:"amazon_sns_config,omitempty"`
	XXX_unrecognized []byte             `json:"-"`
}

Notification configuration definition.

func (*NotificationConfig) GetAmazonSnsConfig

func (m *NotificationConfig) GetAmazonSnsConfig() []*AmazonSnsConfig

func (*NotificationConfig) GetEmailConfig

func (m *NotificationConfig) GetEmailConfig() []*EmailConfig

func (*NotificationConfig) GetFlowdockConfig

func (m *NotificationConfig) GetFlowdockConfig() []*FlowdockConfig

func (*NotificationConfig) GetHipchatConfig

func (m *NotificationConfig) GetHipchatConfig() []*HipChatConfig

func (*NotificationConfig) GetName

func (m *NotificationConfig) GetName() string

func (*NotificationConfig) GetOpsgenieConfig

func (m *NotificationConfig) GetOpsgenieConfig() []*OpsGenieConfig

func (*NotificationConfig) GetPagerdutyConfig

func (m *NotificationConfig) GetPagerdutyConfig() []*PagerDutyConfig

func (*NotificationConfig) GetPushoverConfig

func (m *NotificationConfig) GetPushoverConfig() []*PushoverConfig

func (*NotificationConfig) GetSlackConfig

func (m *NotificationConfig) GetSlackConfig() []*SlackConfig

func (*NotificationConfig) GetWebhookConfig

func (m *NotificationConfig) GetWebhookConfig() []*WebhookConfig

func (*NotificationConfig) ProtoMessage

func (*NotificationConfig) ProtoMessage()

func (*NotificationConfig) Reset

func (m *NotificationConfig) Reset()

func (*NotificationConfig) String

func (m *NotificationConfig) String() string

type OpsGenieConfig

type OpsGenieConfig struct {
	// OpsGenie API token.
	ApiKey *string `protobuf:"bytes,1,opt,name=api_key" json:"api_key,omitempty"`
	// List of team names which will be responsible for the alert.
	Teams []string `protobuf:"bytes,2,rep,name=teams" json:"teams,omitempty"`
	// List of labels that have their values converted to tags.
	LabelsToTags []string `protobuf:"bytes,3,rep,name=labels_to_tags" json:"labels_to_tags,omitempty"`
	// Notify when resolved.
	SendResolved     *bool  `protobuf:"varint,4,opt,name=send_resolved,def=0" json:"send_resolved,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

Configuration for notification via OpsGenie.

func (*OpsGenieConfig) GetApiKey

func (m *OpsGenieConfig) GetApiKey() string

func (*OpsGenieConfig) GetLabelsToTags

func (m *OpsGenieConfig) GetLabelsToTags() []string

func (*OpsGenieConfig) GetSendResolved

func (m *OpsGenieConfig) GetSendResolved() bool

func (*OpsGenieConfig) GetTeams

func (m *OpsGenieConfig) GetTeams() []string

func (*OpsGenieConfig) ProtoMessage

func (*OpsGenieConfig) ProtoMessage()

func (*OpsGenieConfig) Reset

func (m *OpsGenieConfig) Reset()

func (*OpsGenieConfig) String

func (m *OpsGenieConfig) String() string

type PagerDutyConfig

type PagerDutyConfig struct {
	// PagerDuty service key, see:
	// http://developer.pagerduty.com/documentation/integration/events
	ServiceKey       *string `protobuf:"bytes,1,opt,name=service_key" json:"service_key,omitempty"`
	XXX_unrecognized []byte  `json:"-"`
}

Configuration for notification via PagerDuty.

func (*PagerDutyConfig) GetServiceKey

func (m *PagerDutyConfig) GetServiceKey() string

func (*PagerDutyConfig) ProtoMessage

func (*PagerDutyConfig) ProtoMessage()

func (*PagerDutyConfig) Reset

func (m *PagerDutyConfig) Reset()

func (*PagerDutyConfig) String

func (m *PagerDutyConfig) String() string

type PushoverConfig

type PushoverConfig struct {
	// Pushover token.
	Token *string `protobuf:"bytes,1,opt,name=token" json:"token,omitempty"`
	// Pushover user_key.
	UserKey *string `protobuf:"bytes,2,opt,name=user_key" json:"user_key,omitempty"`
	// Notify when resolved.
	SendResolved     *bool  `protobuf:"varint,3,opt,name=send_resolved,def=0" json:"send_resolved,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

Configuration for notification via pushover.net.

func (*PushoverConfig) GetSendResolved

func (m *PushoverConfig) GetSendResolved() bool

func (*PushoverConfig) GetToken

func (m *PushoverConfig) GetToken() string

func (*PushoverConfig) GetUserKey

func (m *PushoverConfig) GetUserKey() string

func (*PushoverConfig) ProtoMessage

func (*PushoverConfig) ProtoMessage()

func (*PushoverConfig) Reset

func (m *PushoverConfig) Reset()

func (*PushoverConfig) String

func (m *PushoverConfig) String() string

type SlackConfig

type SlackConfig struct {
	// Slack webhook URL, (https://api.slack.com/incoming-webhooks).
	WebhookUrl *string `protobuf:"bytes,1,opt,name=webhook_url" json:"webhook_url,omitempty"`
	// Slack channel override, (like #other-channel or @username).
	Channel *string `protobuf:"bytes,2,opt,name=channel" json:"channel,omitempty"`
	// Color of message when triggered.
	Color *string `protobuf:"bytes,3,opt,name=color,def=warning" json:"color,omitempty"`
	// Color of message when resolved.
	ColorResolved *string `protobuf:"bytes,4,opt,name=color_resolved,def=good" json:"color_resolved,omitempty"`
	// Notify when resolved.
	SendResolved     *bool  `protobuf:"varint,5,opt,name=send_resolved,def=0" json:"send_resolved,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

Configuration for notification via Slack.

func (*SlackConfig) GetChannel

func (m *SlackConfig) GetChannel() string

func (*SlackConfig) GetColor

func (m *SlackConfig) GetColor() string

func (*SlackConfig) GetColorResolved

func (m *SlackConfig) GetColorResolved() string

func (*SlackConfig) GetSendResolved

func (m *SlackConfig) GetSendResolved() bool

func (*SlackConfig) GetWebhookUrl

func (m *SlackConfig) GetWebhookUrl() string

func (*SlackConfig) ProtoMessage

func (*SlackConfig) ProtoMessage()

func (*SlackConfig) Reset

func (m *SlackConfig) Reset()

func (*SlackConfig) String

func (m *SlackConfig) String() string

type WebhookConfig

type WebhookConfig struct {
	// URL to send POST request to.
	Url *string `protobuf:"bytes,1,opt,name=url" json:"url,omitempty"`
	// Notify when resolved.
	SendResolved     *bool  `protobuf:"varint,2,opt,name=send_resolved,def=0" json:"send_resolved,omitempty"`
	XXX_unrecognized []byte `json:"-"`
}

Configuration for notification via generic webhook.

func (*WebhookConfig) GetSendResolved

func (m *WebhookConfig) GetSendResolved() bool

func (*WebhookConfig) GetUrl

func (m *WebhookConfig) GetUrl() string

func (*WebhookConfig) ProtoMessage

func (*WebhookConfig) ProtoMessage()

func (*WebhookConfig) Reset

func (m *WebhookConfig) Reset()

func (*WebhookConfig) String

func (m *WebhookConfig) String() string

Jump to

Keyboard shortcuts

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