node

package
v3.0.0-rc.3 Latest Latest
Warning

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

Go to latest
Published: Aug 22, 2022 License: GPL-3.0 Imports: 25 Imported by: 1

Documentation

Overview

Package node defines a gRPC node service implementation, providing useful endpoints for checking a node's sync status, peer info, genesis data, and version information.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Server

type Server struct {
	SyncChecker           sync.Checker
	OptimisticModeFetcher blockchain.OptimisticModeFetcher
	Server                *grpc.Server
	BeaconDB              db.ReadOnlyDatabase
	PeersFetcher          p2p.PeersProvider
	PeerManager           p2p.PeerManager
	MetadataProvider      p2p.MetadataProvider
	GenesisTimeFetcher    blockchain.TimeFetcher
	HeadFetcher           blockchain.HeadFetcher
}

Server defines a server implementation of the gRPC Node service, providing RPC endpoints for verifying a beacon node's sync status, genesis and version information.

func (*Server) GetHealth

func (ns *Server) GetHealth(ctx context.Context, _ *emptypb.Empty) (*emptypb.Empty, error)

GetHealth returns node health status in http status codes. Useful for load balancers. Response Usage:

"200":
  description: Node is ready
"206":
  description: Node is syncing but can serve incomplete data
"503":
  description: Node not initialized or having issues

func (*Server) GetIdentity

func (ns *Server) GetIdentity(ctx context.Context, _ *emptypb.Empty) (*ethpb.IdentityResponse, error)

GetIdentity retrieves data about the node's network presence.

func (*Server) GetPeer

func (ns *Server) GetPeer(ctx context.Context, req *ethpb.PeerRequest) (*ethpb.PeerResponse, error)

GetPeer retrieves data about the given peer.

func (*Server) GetSyncStatus

func (ns *Server) GetSyncStatus(ctx context.Context, _ *emptypb.Empty) (*ethpb.SyncingResponse, error)

GetSyncStatus requests the beacon node to describe if it's currently syncing or not, and if it is, what block it is up to.

func (*Server) GetVersion

func (_ *Server) GetVersion(ctx context.Context, _ *emptypb.Empty) (*ethpb.VersionResponse, error)

GetVersion requests that the beacon node identify information about its implementation in a format similar to a HTTP User-Agent field.

func (*Server) ListPeers

func (ns *Server) ListPeers(ctx context.Context, req *ethpb.PeersRequest) (*ethpb.PeersResponse, error)

ListPeers retrieves data about the node's network peers.

func (*Server) PeerCount

func (ns *Server) PeerCount(ctx context.Context, _ *emptypb.Empty) (*ethpb.PeerCountResponse, error)

PeerCount retrieves retrieves number of known peers.

Jump to

Keyboard shortcuts

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