policy

package
v1.2.22 Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2023 License: Apache-2.0 Imports: 6 Imported by: 6

Documentation

Index

Constants

View Source
const (
	ValueBased     DeDuplicationActionType = "value-based"
	FrequencyBased DeDuplicationActionType = "frequency-based"

	ForDuration        DelayType  = "for-duration"
	NextTime           DelayType  = "next-time"
	NextWeekday        DelayType  = "next-weekday"
	NextMonday         DelayType  = "next-monday"
	NextTuesday        DelayType  = "next-tuesday"
	NextWednesday      DelayType  = "next-wednesday"
	NextThursday       DelayType  = "next-thursday"
	NextFriday         DelayType  = "next-friday"
	NextSaturday       DelayType  = "next-saturday"
	NextSunday         DelayType  = "next-sunday"
	AlertPolicy        PolicyType = "alert"
	NotificationPolicy PolicyType = "notification"
)

Variables

This section is empty.

Functions

func ValidateAutoCloseAction

func ValidateAutoCloseAction(action AutoCloseAction) error

func ValidateAutoRestartAction

func ValidateAutoRestartAction(action AutoRestartAction) error

func ValidateDeDuplicationAction

func ValidateDeDuplicationAction(action DeDuplicationAction) error

func ValidateDelayAction

func ValidateDelayAction(action DelayAction) error

func ValidateDuration

func ValidateDuration(duration *Duration) error

func ValidateMainFields

func ValidateMainFields(fields *MainFields) error

func ValidatePolicyIdentifier

func ValidatePolicyIdentifier(policyType string, id string, teamId string) error

func ValidateResponders

func ValidateResponders(responders *[]alert.Responder) error

Types

type AutoCloseAction

type AutoCloseAction struct {
	Duration *Duration `json:"duration,omitempty"`
}

type AutoRestartAction

type AutoRestartAction struct {
	Duration       *Duration `json:"duration,omitempty"`
	MaxRepeatCount int       `json:"maxRepeatCount,omitempty"`
}

type ChangeOrderRequest

type ChangeOrderRequest struct {
	client.BaseRequest
	Id          string `json:"id,omitempty"`
	TeamId      string
	Type        PolicyType
	TargetIndex int `json:"targetIndex,omitempty"`
}

func (*ChangeOrderRequest) Method

func (r *ChangeOrderRequest) Method() string

func (*ChangeOrderRequest) RequestParams

func (r *ChangeOrderRequest) RequestParams() map[string]string

func (*ChangeOrderRequest) ResourcePath

func (r *ChangeOrderRequest) ResourcePath() string

func (*ChangeOrderRequest) Validate

func (r *ChangeOrderRequest) Validate() error

type Client

type Client struct {
	// contains filtered or unexported fields
}

func NewClient

func NewClient(config *client.Config) (*Client, error)

func (*Client) ChangeOrder

func (c *Client) ChangeOrder(context context.Context, request *ChangeOrderRequest) (*PolicyResult, error)

func (*Client) CreateAlertPolicy

func (c *Client) CreateAlertPolicy(context context.Context, request *CreateAlertPolicyRequest) (*CreateResult, error)

func (*Client) CreateNotificationPolicy

func (c *Client) CreateNotificationPolicy(context context.Context, request *CreateNotificationPolicyRequest) (*CreateResult, error)

func (*Client) DeletePolicy

func (c *Client) DeletePolicy(context context.Context, request *DeletePolicyRequest) (*PolicyResult, error)

func (*Client) DisablePolicy

func (c *Client) DisablePolicy(context context.Context, request *DisablePolicyRequest) (*PolicyResult, error)

func (*Client) EnablePolicy

func (c *Client) EnablePolicy(context context.Context, request *EnablePolicyRequest) (*PolicyResult, error)

func (*Client) GetAlertPolicy

func (c *Client) GetAlertPolicy(context context.Context, request *GetAlertPolicyRequest) (*GetAlertPolicyResult, error)

func (*Client) GetNotificationPolicy

func (c *Client) GetNotificationPolicy(context context.Context, request *GetNotificationPolicyRequest) (*GetNotificationPolicyResult, error)

func (*Client) ListAlertPolicies

func (c *Client) ListAlertPolicies(context context.Context, request *ListAlertPoliciesRequest) (*ListPolicyResult, error)

func (*Client) ListNotificationPolicies

func (c *Client) ListNotificationPolicies(context context.Context, request *ListNotificationPoliciesRequest) (*ListPolicyResult, error)

func (*Client) UpdateAlertPolicy

func (c *Client) UpdateAlertPolicy(context context.Context, request *UpdateAlertPolicyRequest) (*PolicyResult, error)

func (*Client) UpdateNotificationPolicy

func (c *Client) UpdateNotificationPolicy(context context.Context, request *UpdateNotificationPolicyRequest) (*PolicyResult, error)

type CreateAlertPolicyRequest

type CreateAlertPolicyRequest struct {
	client.BaseRequest
	MainFields
	Message                  string             `json:"message,omitempty"`
	Continue                 *bool              `json:"continue,omitempty"`
	Alias                    string             `json:"alias,omitempty"`
	AlertDescription         string             `json:"description,omitempty"`
	Entity                   string             `json:"entity,omitempty"`
	Source                   string             `json:"source,omitempty"`
	IgnoreOriginalDetails    *bool              `json:"ignoreOriginalDetails,omitempty"`
	Actions                  []string           `json:"actions,omitempty"`
	IgnoreOriginalActions    *bool              `json:"ignoreOriginalActions,omitempty"`
	Details                  []string           `json:"details,omitempty"`
	IgnoreOriginalResponders *bool              `json:"ignoreOriginalResponders,omitempty"`
	Responders               *[]alert.Responder `json:"responders,omitempty"`
	IgnoreOriginalTags       *bool              `json:"ignoreOriginalTags,omitempty"`
	Tags                     []string           `json:"tags,omitempty"`
	Priority                 alert.Priority     `json:"priority,omitempty"`
}

func (*CreateAlertPolicyRequest) Method

func (r *CreateAlertPolicyRequest) Method() string

func (*CreateAlertPolicyRequest) RequestParams

func (r *CreateAlertPolicyRequest) RequestParams() map[string]string

func (*CreateAlertPolicyRequest) ResourcePath

func (r *CreateAlertPolicyRequest) ResourcePath() string

func (*CreateAlertPolicyRequest) Validate

func (r *CreateAlertPolicyRequest) Validate() error

type CreateNotificationPolicyRequest

type CreateNotificationPolicyRequest struct {
	client.BaseRequest
	MainFields
	AutoRestartAction   *AutoRestartAction   `json:"autoRestartAction,omitempty"`
	AutoCloseAction     *AutoCloseAction     `json:"autoCloseAction,omitempty"`
	DeDuplicationAction *DeDuplicationAction `json:"deduplicationAction,omitempty"`
	DelayAction         *DelayAction         `json:"delayAction,omitempty"`
	Suppress            *bool                `json:"suppress,omitempty"`
}

func (*CreateNotificationPolicyRequest) Method

func (*CreateNotificationPolicyRequest) RequestParams

func (r *CreateNotificationPolicyRequest) RequestParams() map[string]string

func (*CreateNotificationPolicyRequest) ResourcePath

func (r *CreateNotificationPolicyRequest) ResourcePath() string

func (*CreateNotificationPolicyRequest) Validate

func (r *CreateNotificationPolicyRequest) Validate() error

type CreateResult

type CreateResult struct {
	client.ResultMetadata
	Id      string `json:"id"`
	Name    string `json:"name"`
	Type    string `json:"type"`
	Enabled bool   `json:"enabled"`
}

type DeDuplicationAction

type DeDuplicationAction struct {
	DeDuplicationActionType DeDuplicationActionType `json:"deduplicationActionType,omitempty"`
	Duration                *Duration               `json:"duration,omitempty"`
	Count                   int                     `json:"count,omitempty"`
}

type DeDuplicationActionType

type DeDuplicationActionType string

type DelayAction

type DelayAction struct {
	DelayOption DelayType `json:"delayOption,omitempty"`
	UntilMinute *int      `json:"untilMinute,omitempty"`
	UntilHour   *int      `json:"untilHour,omitempty"`
	Duration    *Duration `json:"duration,omitempty"`
}

type DelayType

type DelayType string

type DeletePolicyRequest

type DeletePolicyRequest struct {
	client.BaseRequest
	Id     string `json:"id,omitempty"`
	TeamId string
	Type   PolicyType
}

func (*DeletePolicyRequest) Method

func (r *DeletePolicyRequest) Method() string

func (*DeletePolicyRequest) RequestParams

func (r *DeletePolicyRequest) RequestParams() map[string]string

func (*DeletePolicyRequest) ResourcePath

func (r *DeletePolicyRequest) ResourcePath() string

func (*DeletePolicyRequest) Validate

func (r *DeletePolicyRequest) Validate() error

type DisablePolicyRequest

type DisablePolicyRequest struct {
	client.BaseRequest
	Id     string `json:"id,omitempty"`
	TeamId string
	Type   PolicyType
}

func (*DisablePolicyRequest) Method

func (r *DisablePolicyRequest) Method() string

func (*DisablePolicyRequest) RequestParams

func (r *DisablePolicyRequest) RequestParams() map[string]string

func (*DisablePolicyRequest) ResourcePath

func (r *DisablePolicyRequest) ResourcePath() string

func (*DisablePolicyRequest) Validate

func (r *DisablePolicyRequest) Validate() error

type Duration

type Duration struct {
	TimeAmount int         `json:"timeAmount,omitempty"`
	TimeUnit   og.TimeUnit `json:"timeUnit,omitempty"`
}

type EnablePolicyRequest

type EnablePolicyRequest struct {
	client.BaseRequest
	Id     string `json:"id,omitempty"`
	TeamId string
	Type   PolicyType
}

func (*EnablePolicyRequest) Method

func (r *EnablePolicyRequest) Method() string

func (*EnablePolicyRequest) RequestParams

func (r *EnablePolicyRequest) RequestParams() map[string]string

func (*EnablePolicyRequest) ResourcePath

func (r *EnablePolicyRequest) ResourcePath() string

func (*EnablePolicyRequest) Validate

func (r *EnablePolicyRequest) Validate() error

type GetAlertPolicyRequest

type GetAlertPolicyRequest struct {
	client.BaseRequest
	Id     string
	TeamId string
}

func (*GetAlertPolicyRequest) Method

func (r *GetAlertPolicyRequest) Method() string

func (*GetAlertPolicyRequest) RequestParams

func (r *GetAlertPolicyRequest) RequestParams() map[string]string

func (*GetAlertPolicyRequest) ResourcePath

func (r *GetAlertPolicyRequest) ResourcePath() string

func (*GetAlertPolicyRequest) Validate

func (r *GetAlertPolicyRequest) Validate() error

type GetAlertPolicyResult

type GetAlertPolicyResult struct {
	client.ResultMetadata
	MainFields
	Message                  string             `json:"message"`
	Continue                 bool               `json:"continue,omitempty"`
	Alias                    string             `json:"alias,omitempty"`
	AlertDescription         string             `json:"description,omitempty"`
	Entity                   string             `json:"entity,omitempty"`
	Source                   string             `json:"source,omitempty"`
	IgnoreOriginalDetails    bool               `json:"ignoreOriginalDetails,omitempty"`
	Actions                  []string           `json:"actions,omitempty"`
	IgnoreOriginalActions    bool               `json:"ignoreOriginalActions,omitempty"`
	Details                  interface{}        `json:"details,omitempty"`
	IgnoreOriginalResponders bool               `json:"ignoreOriginalResponders,omitempty"`
	Responders               *[]alert.Responder `json:"responders,omitempty"`
	IgnoreOriginalTags       bool               `json:"ignoreOriginalTags,omitempty"`
	Tags                     []string           `json:"tags,omitempty"`
	Priority                 alert.Priority     `json:"priority,omitempty"`
}

type GetNotificationPolicyRequest

type GetNotificationPolicyRequest struct {
	client.BaseRequest
	Id     string
	TeamId string
}

func (*GetNotificationPolicyRequest) Method

func (*GetNotificationPolicyRequest) RequestParams

func (r *GetNotificationPolicyRequest) RequestParams() map[string]string

func (*GetNotificationPolicyRequest) ResourcePath

func (r *GetNotificationPolicyRequest) ResourcePath() string

func (*GetNotificationPolicyRequest) Validate

func (r *GetNotificationPolicyRequest) Validate() error

type GetNotificationPolicyResult

type GetNotificationPolicyResult struct {
	client.ResultMetadata
	MainFields
	AutoRestartAction   *AutoRestartAction   `json:"autoRestartAction,omitempty"`
	AutoCloseAction     *AutoCloseAction     `json:"autoCloseAction,omitempty"`
	DeDuplicationAction *DeDuplicationAction `json:"deduplicationAction,omitempty"`
	DelayAction         *DelayAction         `json:"delayAction,omitempty"`
	Suppress            bool                 `json:"suppress,omitempty"`
}

type ListAlertPoliciesRequest

type ListAlertPoliciesRequest struct {
	client.BaseRequest
	TeamId string
}

func (*ListAlertPoliciesRequest) Method

func (r *ListAlertPoliciesRequest) Method() string

func (*ListAlertPoliciesRequest) RequestParams

func (r *ListAlertPoliciesRequest) RequestParams() map[string]string

func (*ListAlertPoliciesRequest) ResourcePath

func (r *ListAlertPoliciesRequest) ResourcePath() string

func (*ListAlertPoliciesRequest) Validate

func (r *ListAlertPoliciesRequest) Validate() error

type ListNotificationPoliciesRequest

type ListNotificationPoliciesRequest struct {
	client.BaseRequest
	TeamId string
}

func (*ListNotificationPoliciesRequest) Method

func (*ListNotificationPoliciesRequest) RequestParams

func (r *ListNotificationPoliciesRequest) RequestParams() map[string]string

func (*ListNotificationPoliciesRequest) ResourcePath

func (r *ListNotificationPoliciesRequest) ResourcePath() string

func (*ListNotificationPoliciesRequest) Validate

func (r *ListNotificationPoliciesRequest) Validate() error

type ListPolicyResult

type ListPolicyResult struct {
	client.ResultMetadata
	Policies []PolicyProps `json:"data,omitempty"`
}

type MainFields

type MainFields struct {
	PolicyType        string              `json:"type,omitempty"`
	Name              string              `json:"name,omitempty"`
	Enabled           *bool               `json:"enabled"`
	PolicyDescription string              `json:"policyDescription"`
	Filter            *og.Filter          `json:"filter,omitempty"`
	TimeRestriction   *og.TimeRestriction `json:"timeRestrictions,omitempty"`
	TeamId            string
}

type PolicyProps

type PolicyProps struct {
	Id      string `json:"id,omitempty"`
	Name    string `json:"name,omitempty"`
	Type    string `json:"type,omitempty"`
	Order   int    `json:"order,omitempty"`
	Enabled bool   `json:"enabled,omitempty"`
}

type PolicyResult

type PolicyResult struct {
	client.ResultMetadata
	Result string `json:"result,omitempty"`
}

type PolicyType

type PolicyType string

type UpdateAlertPolicyRequest

type UpdateAlertPolicyRequest struct {
	client.BaseRequest
	MainFields
	Message                  string                 `json:"message,omitempty"`
	Continue                 *bool                  `json:"continue,omitempty"`
	Alias                    string                 `json:"alias,omitempty"`
	AlertDescription         string                 `json:"description,omitempty"`
	Entity                   string                 `json:"entity,omitempty"`
	Source                   string                 `json:"source,omitempty"`
	IgnoreOriginalDetails    *bool                  `json:"ignoreOriginalDetails,omitempty"`
	Actions                  []string               `json:"actions,omitempty"`
	IgnoreOriginalActions    *bool                  `json:"ignoreOriginalActions,omitempty"`
	Details                  map[string]interface{} `json:"details,omitempty"`
	IgnoreOriginalResponders *bool                  `json:"ignoreOriginalResponders,omitempty"`
	Responders               *[]alert.Responder     `json:"responders,omitempty"`
	IgnoreOriginalTags       *bool                  `json:"ignoreOriginalTags,omitempty"`
	Tags                     []string               `json:"tags,omitempty"`
	Priority                 alert.Priority         `json:"priority,omitempty"`
	Id                       string
}

func (*UpdateAlertPolicyRequest) Method

func (r *UpdateAlertPolicyRequest) Method() string

func (*UpdateAlertPolicyRequest) RequestParams added in v1.2.0

func (r *UpdateAlertPolicyRequest) RequestParams() map[string]string

func (*UpdateAlertPolicyRequest) ResourcePath

func (r *UpdateAlertPolicyRequest) ResourcePath() string

func (*UpdateAlertPolicyRequest) Validate

func (r *UpdateAlertPolicyRequest) Validate() error

type UpdateNotificationPolicyRequest

type UpdateNotificationPolicyRequest struct {
	client.BaseRequest
	MainFields
	AutoRestartAction   *AutoRestartAction   `json:"autoRestartAction,omitempty"`
	AutoCloseAction     *AutoCloseAction     `json:"autoCloseAction,omitempty"`
	DeDuplicationAction *DeDuplicationAction `json:"deduplicationAction,omitempty"`
	DelayAction         *DelayAction         `json:"delayAction,omitempty"`
	Suppress            *bool                `json:"suppress,omitempty"`
	Id                  string
}

func (*UpdateNotificationPolicyRequest) Method

func (*UpdateNotificationPolicyRequest) RequestParams

func (r *UpdateNotificationPolicyRequest) RequestParams() map[string]string

func (*UpdateNotificationPolicyRequest) ResourcePath

func (r *UpdateNotificationPolicyRequest) ResourcePath() string

func (*UpdateNotificationPolicyRequest) Validate

func (r *UpdateNotificationPolicyRequest) Validate() error

Jump to

Keyboard shortcuts

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