Documentation ¶
Index ¶
- Constants
- type Aggregator
- type AggregatorOption
- type AggregatorOptions
- type ConditionStatus
- type ConditionTracker
- type HealthClientSet
- type HealthStatusQuerier
- type HealthStatusUpdater
- type HealthUpdate
- type Listener
- func (l *Listener) Close()
- func (l *Listener) HandleAgentConnection(ctx context.Context, clientset agentv1.ClientSet)
- func (l *Listener) HandleConnection(ctx context.Context, clientset HealthClientSet)
- func (l *Listener) HealthC() chan HealthUpdate
- func (l *Listener) StatusC() chan StatusUpdate
- func (l *Listener) UpdateHealth(ctx context.Context, req *corev1.Health) (*emptypb.Empty, error)
- type ListenerOption
- type ListenerOptions
- type Monitor
- type MonitorOption
- type MonitorOptions
- type StatusUpdate
Constants ¶
View Source
const ( CondConfigSync = "Config Sync" CondBackend = "Backend" )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Aggregator ¶ added in v0.6.0
type Aggregator struct { controlv1.UnsafeHealthServer AggregatorOptions // contains filtered or unexported fields }
Aggregator implements a HealthServer that queries one or more HealthClients and aggregates the results. This server will report as ready if and only if all clients report as ready.
func NewAggregator ¶ added in v0.6.0
func NewAggregator(opts ...AggregatorOption) *Aggregator
func (*Aggregator) AddClient ¶ added in v0.6.0
func (h *Aggregator) AddClient(name string, client controlv1.HealthClient)
func (*Aggregator) RemoveClient ¶ added in v0.6.0
func (h *Aggregator) RemoveClient(name string)
type AggregatorOption ¶ added in v0.6.0
type AggregatorOption func(*AggregatorOptions)
func WithStaticAnnotations ¶ added in v0.6.0
func WithStaticAnnotations(staticAnnotations map[string]string) AggregatorOption
type AggregatorOptions ¶ added in v0.6.0
type AggregatorOptions struct {
// contains filtered or unexported fields
}
type ConditionStatus ¶ added in v0.6.1
type ConditionStatus int32
const ( StatusPending ConditionStatus = iota StatusFailure StatusDisabled )
func ConditionStatusStrToEnum ¶ added in v0.8.0
func ConditionStatusStrToEnum(status string) (ConditionStatus, error)
func (ConditionStatus) String ¶ added in v0.6.1
func (s ConditionStatus) String() string
type ConditionTracker ¶ added in v0.6.1
type ConditionTracker interface { Set(key string, value ConditionStatus, reason string) Clear(key string, reason ...string) List() []string LastModified() time.Time // Adds a listener that will be called whenever any condition is changed. // The listener will be called in a separate goroutine. Ensure that the // listener does not itself set or clear any conditions. AddListener(listener func()) }
func NewDefaultConditionTracker ¶ added in v0.6.1
func NewDefaultConditionTracker(logger *zap.SugaredLogger) ConditionTracker
type HealthClientSet ¶
type HealthStatusQuerier ¶
type HealthStatusQuerier interface { GetHealthStatus(id string) *corev1.HealthStatus WatchHealthStatus(ctx context.Context) <-chan *corev1.ClusterHealthStatus }
type HealthStatusUpdater ¶
type HealthStatusUpdater interface { StatusC() chan StatusUpdate HealthC() chan HealthUpdate }
type HealthUpdate ¶
type Listener ¶
type Listener struct { controlv1.UnsafeHealthListenerServer ListenerOptions // contains filtered or unexported fields }
func NewListener ¶
func NewListener(opts ...ListenerOption) *Listener
func (*Listener) HandleAgentConnection ¶
Implements gateway.ConnectionHandler
func (*Listener) HandleConnection ¶
func (l *Listener) HandleConnection(ctx context.Context, clientset HealthClientSet)
func (*Listener) HealthC ¶
func (l *Listener) HealthC() chan HealthUpdate
func (*Listener) StatusC ¶
func (l *Listener) StatusC() chan StatusUpdate
type ListenerOption ¶
type ListenerOption func(*ListenerOptions)
func WithMaxConnections ¶
func WithMaxConnections(max int64) ListenerOption
Max concurrent connections. Defaults to math.MaxInt64
func WithMaxJitter ¶
func WithMaxJitter(duration time.Duration) ListenerOption
func WithPollInterval ¶
func WithPollInterval(interval time.Duration) ListenerOption
func WithUpdateQueueCap ¶
func WithUpdateQueueCap(cap int) ListenerOption
Max concurrent queued updates before blocking. Defaults to 1000
type ListenerOptions ¶
type ListenerOptions struct {
// contains filtered or unexported fields
}
type Monitor ¶
type Monitor struct { MonitorOptions // contains filtered or unexported fields }
func NewMonitor ¶
func NewMonitor(opts ...MonitorOption) *Monitor
func (*Monitor) GetHealthStatus ¶
func (m *Monitor) GetHealthStatus(id string) *corev1.HealthStatus
func (*Monitor) WatchHealthStatus ¶ added in v0.6.0
func (m *Monitor) WatchHealthStatus(ctx context.Context) <-chan *corev1.ClusterHealthStatus
type MonitorOption ¶
type MonitorOption func(*MonitorOptions)
func WithLogger ¶
func WithLogger(lg *zap.SugaredLogger) MonitorOption
type MonitorOptions ¶
type MonitorOptions struct {
// contains filtered or unexported fields
}
type StatusUpdate ¶
Source Files ¶
Click to show internal directories.
Click to hide internal directories.