ruler

package
v0.0.0-...-cae4bf4 Latest Latest
Warning

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

Go to latest
Published: Oct 24, 2020 License: Apache-2.0 Imports: 72 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrNoNamespace signals that no namespace was specified in the request
	ErrNoNamespace = errors.New("a namespace must be provided in the request")
	// ErrNoGroupName signals a group name url parameter was not found
	ErrNoGroupName = errors.New("a matching group name must be provided in the request")
	// ErrNoRuleGroups signals the rule group requested does not exist
	ErrNoRuleGroups = errors.New("no rule groups found")
	// ErrBadRuleGroup is returned when the provided rule group can not be unmarshalled
	ErrBadRuleGroup = errors.New("unable to decoded rule group")
)
View Source
var (
	ErrInvalidLengthRuler = fmt.Errorf("proto: negative length found during unmarshaling")
	ErrIntOverflowRuler   = fmt.Errorf("proto: integer overflow")
)

Functions

func NewRuleStorage

func NewRuleStorage(cfg RuleStoreConfig) (rules.RuleStore, error)

NewRuleStorage returns a new rule storage backend poller and store

func RegisterRulerServer

func RegisterRulerServer(s *grpc.Server, srv RulerServer)

func SendAlerts

func SendAlerts(n *notifier.Manager, externalURL string) promRules.NotifyFunc

SendAlerts implements a rules.NotifyFunc for a Notifier. It filters any non-firing alerts from the input.

Copied from Prometheus's main.go.

func ValidateRuleGroup

func ValidateRuleGroup(g rulefmt.RuleGroup) []error

ValidateRuleGroup validates a rulegroup

Types

type Alert

type Alert struct {
	Labels      labels.Labels `json:"labels"`
	Annotations labels.Labels `json:"annotations"`
	State       string        `json:"state"`
	ActiveAt    *time.Time    `json:"activeAt"`
	Value       string        `json:"value"`
}

Alert has info for an alert.

type AlertDiscovery

type AlertDiscovery struct {
	Alerts []*Alert `json:"alerts"`
}

AlertDiscovery has info for all active alerts.

type AlertStateDesc

type AlertStateDesc struct {
	State       string                                                             `protobuf:"bytes,1,opt,name=state,proto3" json:"state,omitempty"`
	Labels      []github_com_cortexproject_cortex_pkg_ingester_client.LabelAdapter `` /* 131-byte string literal not displayed */
	Annotations []github_com_cortexproject_cortex_pkg_ingester_client.LabelAdapter `` /* 141-byte string literal not displayed */
	Value       float64                                                            `protobuf:"fixed64,4,opt,name=value,proto3" json:"value,omitempty"`
	ActiveAt    time.Time                                                          `protobuf:"bytes,5,opt,name=active_at,json=activeAt,proto3,stdtime" json:"active_at"`
	FiredAt     time.Time                                                          `protobuf:"bytes,6,opt,name=fired_at,json=firedAt,proto3,stdtime" json:"fired_at"`
	ResolvedAt  time.Time                                                          `protobuf:"bytes,7,opt,name=resolved_at,json=resolvedAt,proto3,stdtime" json:"resolved_at"`
	LastSentAt  time.Time                                                          `protobuf:"bytes,8,opt,name=last_sent_at,json=lastSentAt,proto3,stdtime" json:"last_sent_at"`
	ValidUntil  time.Time                                                          `protobuf:"bytes,9,opt,name=valid_until,json=validUntil,proto3,stdtime" json:"valid_until"`
}

func (*AlertStateDesc) Descriptor

func (*AlertStateDesc) Descriptor() ([]byte, []int)

func (*AlertStateDesc) Equal

func (this *AlertStateDesc) Equal(that interface{}) bool

func (*AlertStateDesc) GetActiveAt

func (m *AlertStateDesc) GetActiveAt() time.Time

func (*AlertStateDesc) GetFiredAt

func (m *AlertStateDesc) GetFiredAt() time.Time

func (*AlertStateDesc) GetLastSentAt

func (m *AlertStateDesc) GetLastSentAt() time.Time

func (*AlertStateDesc) GetResolvedAt

func (m *AlertStateDesc) GetResolvedAt() time.Time

func (*AlertStateDesc) GetState

func (m *AlertStateDesc) GetState() string

func (*AlertStateDesc) GetValidUntil

func (m *AlertStateDesc) GetValidUntil() time.Time

func (*AlertStateDesc) GetValue

func (m *AlertStateDesc) GetValue() float64

func (*AlertStateDesc) GoString

func (this *AlertStateDesc) GoString() string

func (*AlertStateDesc) Marshal

func (m *AlertStateDesc) Marshal() (dAtA []byte, err error)

func (*AlertStateDesc) MarshalTo

func (m *AlertStateDesc) MarshalTo(dAtA []byte) (int, error)

func (*AlertStateDesc) MarshalToSizedBuffer

func (m *AlertStateDesc) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*AlertStateDesc) ProtoMessage

func (*AlertStateDesc) ProtoMessage()

func (*AlertStateDesc) Reset

func (m *AlertStateDesc) Reset()

func (*AlertStateDesc) Size

func (m *AlertStateDesc) Size() (n int)

func (*AlertStateDesc) String

func (this *AlertStateDesc) String() string

func (*AlertStateDesc) Unmarshal

func (m *AlertStateDesc) Unmarshal(dAtA []byte) error

func (*AlertStateDesc) XXX_DiscardUnknown

func (m *AlertStateDesc) XXX_DiscardUnknown()

func (*AlertStateDesc) XXX_Marshal

func (m *AlertStateDesc) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*AlertStateDesc) XXX_Merge

func (m *AlertStateDesc) XXX_Merge(src proto.Message)

func (*AlertStateDesc) XXX_Size

func (m *AlertStateDesc) XXX_Size() int

func (*AlertStateDesc) XXX_Unmarshal

func (m *AlertStateDesc) XXX_Unmarshal(b []byte) error

type Config

type Config struct {
	// This is used for template expansion in alerts; must be a valid URL.
	ExternalURL flagext.URLValue `yaml:"external_url"`
	// TLS parameters for the GRPC Client
	ClientTLSConfig tls.ClientConfig `yaml:"ruler_client"`
	// How frequently to evaluate rules by default.
	EvaluationInterval time.Duration `yaml:"evaluation_interval"`
	// Delay the evaluation of all rules by a set interval to give a buffer
	// to metric that haven't been forwarded to cortex yet.
	EvaluationDelay time.Duration `yaml:"evaluation_delay_duration"`
	// How frequently to poll for updated rules.
	PollInterval time.Duration `yaml:"poll_interval"`
	// Rule Storage and Polling configuration.
	StoreConfig RuleStoreConfig `yaml:"storage"`
	// Path to store rule files for prom manager.
	RulePath string `yaml:"rule_path"`

	// URL of the Alertmanager to send notifications to.
	AlertmanagerURL flagext.StringSlice `yaml:"alertmanager_url"`
	// Whether to use DNS SRV records to discover Alertmanager.
	AlertmanagerDiscovery bool `yaml:"enable_alertmanager_discovery"`
	// How long to wait between refreshing the list of Alertmanager based on DNS service discovery.
	AlertmanagerRefreshInterval time.Duration `yaml:"alertmanager_refresh_interval"`
	// Enables the ruler notifier to use the Alertmananger V2 API.
	AlertmanangerEnableV2API bool `yaml:"enable_alertmanager_v2"`
	// Capacity of the queue for notifications to be sent to the Alertmanager.
	NotificationQueueCapacity int `yaml:"notification_queue_capacity"`
	// HTTP timeout duration when sending notifications to the Alertmanager.
	NotificationTimeout time.Duration `yaml:"notification_timeout"`

	// Max time to tolerate outage for restoring "for" state of alert.
	OutageTolerance time.Duration `yaml:"for_outage_tolerance"`
	// Minimum duration between alert and restored "for" state. This is maintained only for alerts with configured "for" time greater than grace period.
	ForGracePeriod time.Duration `yaml:"for_grace_period"`
	// Minimum amount of time to wait before resending an alert to Alertmanager.
	ResendDelay time.Duration `yaml:"resend_delay"`

	// Enable sharding rule groups.
	EnableSharding   bool          `yaml:"enable_sharding"`
	SearchPendingFor time.Duration `yaml:"search_pending_for"`
	Ring             RingConfig    `yaml:"ring"`
	FlushCheckPeriod time.Duration `yaml:"flush_period"`

	EnableAPI bool `yaml:"enable_api"`
}

Config is the configuration for the recording rules server.

func (*Config) RegisterFlags

func (cfg *Config) RegisterFlags(f *flag.FlagSet)

RegisterFlags adds the flags required to config this to the given FlagSet

func (*Config) Validate

func (cfg *Config) Validate() error

Validate config and returns error on failure

type GroupStateDesc

type GroupStateDesc struct {
	Group               *rules.RuleGroupDesc `protobuf:"bytes,1,opt,name=group,proto3" json:"group,omitempty"`
	ActiveRules         []*RuleStateDesc     `protobuf:"bytes,2,rep,name=active_rules,json=activeRules,proto3" json:"active_rules,omitempty"`
	EvaluationTimestamp time.Time            `protobuf:"bytes,3,opt,name=evaluationTimestamp,proto3,stdtime" json:"evaluationTimestamp"`
	EvaluationDuration  time.Duration        `protobuf:"bytes,4,opt,name=evaluationDuration,proto3,stdduration" json:"evaluationDuration"`
}

GroupStateDesc is a proto representation of a cortex rule group

func (*GroupStateDesc) Descriptor

func (*GroupStateDesc) Descriptor() ([]byte, []int)

func (*GroupStateDesc) Equal

func (this *GroupStateDesc) Equal(that interface{}) bool

func (*GroupStateDesc) GetActiveRules

func (m *GroupStateDesc) GetActiveRules() []*RuleStateDesc

func (*GroupStateDesc) GetEvaluationDuration

func (m *GroupStateDesc) GetEvaluationDuration() time.Duration

func (*GroupStateDesc) GetEvaluationTimestamp

func (m *GroupStateDesc) GetEvaluationTimestamp() time.Time

func (*GroupStateDesc) GetGroup

func (m *GroupStateDesc) GetGroup() *rules.RuleGroupDesc

func (*GroupStateDesc) GoString

func (this *GroupStateDesc) GoString() string

func (*GroupStateDesc) Marshal

func (m *GroupStateDesc) Marshal() (dAtA []byte, err error)

func (*GroupStateDesc) MarshalTo

func (m *GroupStateDesc) MarshalTo(dAtA []byte) (int, error)

func (*GroupStateDesc) MarshalToSizedBuffer

func (m *GroupStateDesc) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*GroupStateDesc) ProtoMessage

func (*GroupStateDesc) ProtoMessage()

func (*GroupStateDesc) Reset

func (m *GroupStateDesc) Reset()

func (*GroupStateDesc) Size

func (m *GroupStateDesc) Size() (n int)

func (*GroupStateDesc) String

func (this *GroupStateDesc) String() string

func (*GroupStateDesc) Unmarshal

func (m *GroupStateDesc) Unmarshal(dAtA []byte) error

func (*GroupStateDesc) XXX_DiscardUnknown

func (m *GroupStateDesc) XXX_DiscardUnknown()

func (*GroupStateDesc) XXX_Marshal

func (m *GroupStateDesc) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*GroupStateDesc) XXX_Merge

func (m *GroupStateDesc) XXX_Merge(src proto.Message)

func (*GroupStateDesc) XXX_Size

func (m *GroupStateDesc) XXX_Size() int

func (*GroupStateDesc) XXX_Unmarshal

func (m *GroupStateDesc) XXX_Unmarshal(b []byte) error

type ManagerFactory

type ManagerFactory = func(
	ctx context.Context,
	userID string,
	notifier *notifier.Manager,
	logger log.Logger,
	reg prometheus.Registerer,
) *rules.Manager

func DefaultTenantManagerFactory

func DefaultTenantManagerFactory(
	cfg Config,
	p Pusher,
	q storage.Queryable,
	engine *promql.Engine,
) ManagerFactory

type ManagerMetrics

type ManagerMetrics struct {
	EvalDuration        *prometheus.Desc
	IterationDuration   *prometheus.Desc
	IterationsMissed    *prometheus.Desc
	IterationsScheduled *prometheus.Desc
	EvalTotal           *prometheus.Desc
	EvalFailures        *prometheus.Desc
	GroupInterval       *prometheus.Desc
	GroupLastEvalTime   *prometheus.Desc
	GroupLastDuration   *prometheus.Desc
	GroupRules          *prometheus.Desc
	// contains filtered or unexported fields
}

ManagerMetrics aggregates metrics exported by the Prometheus rules package and returns them as Cortex metrics

func NewManagerMetrics

func NewManagerMetrics() *ManagerMetrics

NewManagerMetrics returns a ManagerMetrics struct

func (*ManagerMetrics) AddUserRegistry

func (m *ManagerMetrics) AddUserRegistry(user string, reg *prometheus.Registry)

AddUserRegistry adds a Prometheus registry to the struct

func (*ManagerMetrics) Collect

func (m *ManagerMetrics) Collect(out chan<- prometheus.Metric)

Collect implements the Collector interface

func (*ManagerMetrics) Describe

func (m *ManagerMetrics) Describe(out chan<- *prometheus.Desc)

Describe implements the Collector interface

func (*ManagerMetrics) Registries

func (m *ManagerMetrics) Registries() map[string]*prometheus.Registry

Registries returns a map of prometheus registries managed by the struct

type Pusher

type Pusher interface {
	Push(context.Context, *client.WriteRequest) (*client.WriteResponse, error)
}

Pusher is an ingester server that accepts pushes.

type PusherAppendable

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

PusherAppendable fulfills the storage.Appendable interface for prometheus manager

func (*PusherAppendable) Appender

func (t *PusherAppendable) Appender() storage.Appender

Appender returns a storage.Appender

type RingConfig

type RingConfig struct {
	KVStore          kv.Config     `yaml:"kvstore"`
	HeartbeatPeriod  time.Duration `yaml:"heartbeat_period"`
	HeartbeatTimeout time.Duration `yaml:"heartbeat_timeout"`

	// Instance details
	InstanceID             string   `yaml:"instance_id" doc:"hidden"`
	InstanceInterfaceNames []string `yaml:"instance_interface_names" doc:"hidden"`
	InstancePort           int      `yaml:"instance_port" doc:"hidden"`
	InstanceAddr           string   `yaml:"instance_addr" doc:"hidden"`
	NumTokens              int      `yaml:"num_tokens"`

	// Injected internally
	ListenPort int `yaml:"-"`

	// Used for testing
	SkipUnregister bool `yaml:"-"`
}

RingConfig masks the ring lifecycler config which contains many options not really required by the rulers ring. This config is used to strip down the config to the minimum, and avoid confusion to the user.

func (*RingConfig) RegisterFlags

func (cfg *RingConfig) RegisterFlags(f *flag.FlagSet)

RegisterFlags adds the flags required to config this to the given FlagSet

func (*RingConfig) ToLifecyclerConfig

func (cfg *RingConfig) ToLifecyclerConfig() (ring.BasicLifecyclerConfig, error)

ToLifecyclerConfig returns a LifecyclerConfig based on the ruler ring config.

func (*RingConfig) ToRingConfig

func (cfg *RingConfig) ToRingConfig() ring.Config

type RuleDiscovery

type RuleDiscovery struct {
	RuleGroups []*RuleGroup `json:"groups"`
}

RuleDiscovery has info for all rules

type RuleGroup

type RuleGroup struct {
	Name string `json:"name"`
	File string `json:"file"`
	// In order to preserve rule ordering, while exposing type (alerting or recording)
	// specific properties, both alerting and recording rules are exposed in the
	// same array.
	Rules          []rule    `json:"rules"`
	Interval       float64   `json:"interval"`
	LastEvaluation time.Time `json:"lastEvaluation"`
	EvaluationTime float64   `json:"evaluationTime"`
}

RuleGroup has info for rules which are part of a group

type RuleStateDesc

type RuleStateDesc struct {
	Rule                *rules.RuleDesc   `protobuf:"bytes,1,opt,name=rule,proto3" json:"rule,omitempty"`
	State               string            `protobuf:"bytes,2,opt,name=state,proto3" json:"state,omitempty"`
	Health              string            `protobuf:"bytes,3,opt,name=health,proto3" json:"health,omitempty"`
	LastError           string            `protobuf:"bytes,4,opt,name=lastError,proto3" json:"lastError,omitempty"`
	Alerts              []*AlertStateDesc `protobuf:"bytes,5,rep,name=alerts,proto3" json:"alerts,omitempty"`
	EvaluationTimestamp time.Time         `protobuf:"bytes,6,opt,name=evaluationTimestamp,proto3,stdtime" json:"evaluationTimestamp"`
	EvaluationDuration  time.Duration     `protobuf:"bytes,7,opt,name=evaluationDuration,proto3,stdduration" json:"evaluationDuration"`
}

RuleStateDesc is a proto representation of a Prometheus Rule

func (*RuleStateDesc) Descriptor

func (*RuleStateDesc) Descriptor() ([]byte, []int)

func (*RuleStateDesc) Equal

func (this *RuleStateDesc) Equal(that interface{}) bool

func (*RuleStateDesc) GetAlerts

func (m *RuleStateDesc) GetAlerts() []*AlertStateDesc

func (*RuleStateDesc) GetEvaluationDuration

func (m *RuleStateDesc) GetEvaluationDuration() time.Duration

func (*RuleStateDesc) GetEvaluationTimestamp

func (m *RuleStateDesc) GetEvaluationTimestamp() time.Time

func (*RuleStateDesc) GetHealth

func (m *RuleStateDesc) GetHealth() string

func (*RuleStateDesc) GetLastError

func (m *RuleStateDesc) GetLastError() string

func (*RuleStateDesc) GetRule

func (m *RuleStateDesc) GetRule() *rules.RuleDesc

func (*RuleStateDesc) GetState

func (m *RuleStateDesc) GetState() string

func (*RuleStateDesc) GoString

func (this *RuleStateDesc) GoString() string

func (*RuleStateDesc) Marshal

func (m *RuleStateDesc) Marshal() (dAtA []byte, err error)

func (*RuleStateDesc) MarshalTo

func (m *RuleStateDesc) MarshalTo(dAtA []byte) (int, error)

func (*RuleStateDesc) MarshalToSizedBuffer

func (m *RuleStateDesc) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RuleStateDesc) ProtoMessage

func (*RuleStateDesc) ProtoMessage()

func (*RuleStateDesc) Reset

func (m *RuleStateDesc) Reset()

func (*RuleStateDesc) Size

func (m *RuleStateDesc) Size() (n int)

func (*RuleStateDesc) String

func (this *RuleStateDesc) String() string

func (*RuleStateDesc) Unmarshal

func (m *RuleStateDesc) Unmarshal(dAtA []byte) error

func (*RuleStateDesc) XXX_DiscardUnknown

func (m *RuleStateDesc) XXX_DiscardUnknown()

func (*RuleStateDesc) XXX_Marshal

func (m *RuleStateDesc) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RuleStateDesc) XXX_Merge

func (m *RuleStateDesc) XXX_Merge(src proto.Message)

func (*RuleStateDesc) XXX_Size

func (m *RuleStateDesc) XXX_Size() int

func (*RuleStateDesc) XXX_Unmarshal

func (m *RuleStateDesc) XXX_Unmarshal(b []byte) error

type RuleStoreConfig

type RuleStoreConfig struct {
	Type     string        `yaml:"type"`
	ConfigDB client.Config `yaml:"configdb"`

	// Object Storage Configs
	Azure azure.BlobStorageConfig `yaml:"azure"`
	GCS   gcp.GCSConfig           `yaml:"gcs"`
	S3    aws.S3Config            `yaml:"s3"`
	Swift openstack.SwiftConfig   `yaml:"swift"`
	Local local.Config            `yaml:"local"`
	// contains filtered or unexported fields
}

RuleStoreConfig configures a rule store.

func (*RuleStoreConfig) IsDefaults

func (cfg *RuleStoreConfig) IsDefaults() bool

IsDefaults returns true if the storage options have not been set

func (*RuleStoreConfig) RegisterFlags

func (cfg *RuleStoreConfig) RegisterFlags(f *flag.FlagSet)

RegisterFlags registers flags.

func (*RuleStoreConfig) Validate

func (cfg *RuleStoreConfig) Validate() error

Validate config and returns error on failure

type Ruler

type Ruler struct {
	services.Service
	// contains filtered or unexported fields
}

Ruler evaluates rules.

func NewRuler

func NewRuler(cfg Config, managerFactory ManagerFactory, reg prometheus.Registerer, logger log.Logger, ruleStore rules.RuleStore) (*Ruler, error)

NewRuler creates a new ruler from a distributor and chunk store.

func (*Ruler) CreateRuleGroup

func (r *Ruler) CreateRuleGroup(w http.ResponseWriter, req *http.Request)

func (*Ruler) DeleteRuleGroup

func (r *Ruler) DeleteRuleGroup(w http.ResponseWriter, req *http.Request)

func (*Ruler) GetRuleGroup

func (r *Ruler) GetRuleGroup(w http.ResponseWriter, req *http.Request)

func (*Ruler) GetRules

func (r *Ruler) GetRules(ctx context.Context) ([]*GroupStateDesc, error)

GetRules retrieves the running rules from this ruler and all running rulers in the ring if sharding is enabled

func (*Ruler) ListRules

func (r *Ruler) ListRules(w http.ResponseWriter, req *http.Request)

func (*Ruler) OnRingInstanceHeartbeat

func (r *Ruler) OnRingInstanceHeartbeat(_ *ring.BasicLifecycler, _ *ring.Desc, _ *ring.IngesterDesc)

func (*Ruler) OnRingInstanceRegister

func (r *Ruler) OnRingInstanceRegister(_ *ring.BasicLifecycler, ringDesc ring.Desc, instanceExists bool, instanceID string, instanceDesc ring.IngesterDesc) (ring.IngesterState, ring.Tokens)

func (*Ruler) OnRingInstanceStopping

func (r *Ruler) OnRingInstanceStopping(_ *ring.BasicLifecycler)

func (*Ruler) OnRingInstanceTokens

func (r *Ruler) OnRingInstanceTokens(_ *ring.BasicLifecycler, _ ring.Tokens)

func (*Ruler) PrometheusAlerts

func (r *Ruler) PrometheusAlerts(w http.ResponseWriter, req *http.Request)

func (*Ruler) PrometheusRules

func (r *Ruler) PrometheusRules(w http.ResponseWriter, req *http.Request)

func (*Ruler) Rules

func (r *Ruler) Rules(ctx context.Context, in *RulesRequest) (*RulesResponse, error)

Rules implements the rules service

func (*Ruler) ServeHTTP

func (r *Ruler) ServeHTTP(w http.ResponseWriter, req *http.Request)

type RulerClient

type RulerClient interface {
	Rules(ctx context.Context, in *RulesRequest, opts ...grpc.CallOption) (*RulesResponse, error)
}

RulerClient is the client API for Ruler service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream.

func NewRulerClient

func NewRulerClient(cc *grpc.ClientConn) RulerClient

type RulerServer

type RulerServer interface {
	Rules(context.Context, *RulesRequest) (*RulesResponse, error)
}

RulerServer is the server API for Ruler service.

type RulesRequest

type RulesRequest struct {
}

func (*RulesRequest) Descriptor

func (*RulesRequest) Descriptor() ([]byte, []int)

func (*RulesRequest) Equal

func (this *RulesRequest) Equal(that interface{}) bool

func (*RulesRequest) GoString

func (this *RulesRequest) GoString() string

func (*RulesRequest) Marshal

func (m *RulesRequest) Marshal() (dAtA []byte, err error)

func (*RulesRequest) MarshalTo

func (m *RulesRequest) MarshalTo(dAtA []byte) (int, error)

func (*RulesRequest) MarshalToSizedBuffer

func (m *RulesRequest) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RulesRequest) ProtoMessage

func (*RulesRequest) ProtoMessage()

func (*RulesRequest) Reset

func (m *RulesRequest) Reset()

func (*RulesRequest) Size

func (m *RulesRequest) Size() (n int)

func (*RulesRequest) String

func (this *RulesRequest) String() string

func (*RulesRequest) Unmarshal

func (m *RulesRequest) Unmarshal(dAtA []byte) error

func (*RulesRequest) XXX_DiscardUnknown

func (m *RulesRequest) XXX_DiscardUnknown()

func (*RulesRequest) XXX_Marshal

func (m *RulesRequest) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RulesRequest) XXX_Merge

func (m *RulesRequest) XXX_Merge(src proto.Message)

func (*RulesRequest) XXX_Size

func (m *RulesRequest) XXX_Size() int

func (*RulesRequest) XXX_Unmarshal

func (m *RulesRequest) XXX_Unmarshal(b []byte) error

type RulesResponse

type RulesResponse struct {
	Groups []*GroupStateDesc `protobuf:"bytes,1,rep,name=groups,proto3" json:"groups,omitempty"`
}

func (*RulesResponse) Descriptor

func (*RulesResponse) Descriptor() ([]byte, []int)

func (*RulesResponse) Equal

func (this *RulesResponse) Equal(that interface{}) bool

func (*RulesResponse) GetGroups

func (m *RulesResponse) GetGroups() []*GroupStateDesc

func (*RulesResponse) GoString

func (this *RulesResponse) GoString() string

func (*RulesResponse) Marshal

func (m *RulesResponse) Marshal() (dAtA []byte, err error)

func (*RulesResponse) MarshalTo

func (m *RulesResponse) MarshalTo(dAtA []byte) (int, error)

func (*RulesResponse) MarshalToSizedBuffer

func (m *RulesResponse) MarshalToSizedBuffer(dAtA []byte) (int, error)

func (*RulesResponse) ProtoMessage

func (*RulesResponse) ProtoMessage()

func (*RulesResponse) Reset

func (m *RulesResponse) Reset()

func (*RulesResponse) Size

func (m *RulesResponse) Size() (n int)

func (*RulesResponse) String

func (this *RulesResponse) String() string

func (*RulesResponse) Unmarshal

func (m *RulesResponse) Unmarshal(dAtA []byte) error

func (*RulesResponse) XXX_DiscardUnknown

func (m *RulesResponse) XXX_DiscardUnknown()

func (*RulesResponse) XXX_Marshal

func (m *RulesResponse) XXX_Marshal(b []byte, deterministic bool) ([]byte, error)

func (*RulesResponse) XXX_Merge

func (m *RulesResponse) XXX_Merge(src proto.Message)

func (*RulesResponse) XXX_Size

func (m *RulesResponse) XXX_Size() int

func (*RulesResponse) XXX_Unmarshal

func (m *RulesResponse) XXX_Unmarshal(b []byte) error

type UnimplementedRulerServer

type UnimplementedRulerServer struct {
}

UnimplementedRulerServer can be embedded to have forward compatible implementations.

func (*UnimplementedRulerServer) Rules

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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