lb

package
v0.3.2 Latest Latest
Warning

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

Go to latest
Published: Jan 20, 2021 License: Apache-2.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Client

type Client struct {
	BaseURL *url.URL
	Token   string

	Ping    PingService
	Metrics MetricsService
	// contains filtered or unexported fields
}

Client used to communicate with vedran load balancer

func NewClient

func NewClient(baseURL *url.URL) *Client

NewClient creates vedran load balancer client instance

func (*Client) Register

func (c *Client) Register(id string, payoutAddress string, configHash string) (*RegisterResponse, error)

Register daemon with load balancer and store token in client

type MetricsService

type MetricsService interface {
	Send(client node.Client) (*http.Response, error)
}

MetricsService is used for sending node metrics to load balancer

type PingService

type PingService interface {
	Send() (*http.Response, error)
}

PingService is used for pinging load balancer to confirm daemon is alive

type RegisterRequest

type RegisterRequest struct {
	ID            string `json:"id"`
	ConfigHash    string `json:"config_hash"`
	PayoutAddress string `json:"payout_address"`
}

RegisterRequest contains data needed to connect daemon with lb

type RegisterResponse added in v0.2.0

type RegisterResponse struct {
	Token               string `json:"token"`
	TunnelServerAddress string `json:"tunnel_server_address"`
}

RegisterResponse from lb register endpoint

Jump to

Keyboard shortcuts

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