Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type Client ¶
type Client interface {
Subscribe(subj string, cb nats.MsgHandler) (*nats.Subscription, error)
Publish(subj string, data []byte) error
}
type RegistryMessage ¶
type RegistryMessage struct {
App string `json:"app"`
AvailabilityZone string `json:"availability_zone"`
EndpointUpdatedAtNs int64 `json:"endpoint_updated_at_ns"`
Host string `json:"host"`
IsolationSegment string `json:"isolation_segment"`
Port uint16 `json:"port"`
PrivateInstanceID string `json:"private_instance_id"`
PrivateInstanceIndex string `json:"private_instance_index"`
Protocol string `json:"protocol"`
RouteServiceURL string `json:"route_service_url"`
ServerCertDomainSAN string `json:"server_cert_domain_san"`
StaleThresholdInSeconds int `json:"stale_threshold_in_seconds"`
TLSPort uint16 `json:"tls_port"`
Tags map[string]string `json:"tags"`
Uris []route.Uri `json:"uris"`
Options RegistryMessageOpts `json:"options"`
}
func (*RegistryMessage) ValidateMessage ¶
func (rm *RegistryMessage) ValidateMessage() bool
ValidateMessage checks to ensure the registry message is valid
type RegistryMessageOpts ¶
type RegistryMessageOpts struct {
LoadBalancingAlgorithm string `json:"loadbalancing"`
}
type Subscriber ¶
type Subscriber struct {
// contains filtered or unexported fields
}
Subscriber subscribes to NATS for all router.* messages and handles them
func NewSubscriber ¶
func NewSubscriber( mbusClient Client, routeRegistry registry.Registry, c *config.Config, reconnected <-chan Signal, l *slog.Logger, ) *Subscriber
NewSubscriber returns a new Subscriber
func (*Subscriber) Dropped ¶
func (s *Subscriber) Dropped() (int, error)
func (*Subscriber) Pending ¶
func (s *Subscriber) Pending() (int, error)
Click to show internal directories.
Click to hide internal directories.