Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( TaskName = "check_consensus_identity" TaskDescriptor = &types.TaskDescriptor{ Name: TaskName, Description: "Checks consensus client node identity information including CGC extraction from ENR.", Config: DefaultConfig(), NewTask: NewTask, } )
Functions ¶
func NewTask ¶
func NewTask(ctx *types.TaskContext, options *types.TaskOptions) (types.Task, error)
Types ¶
type Config ¶
type Config struct {
ClientPattern string `yaml:"clientPattern" json:"clientPattern"`
PollInterval helper.Duration `yaml:"pollInterval" json:"pollInterval"`
MinClientCount int `yaml:"minClientCount" json:"minClientCount"`
MaxFailCount int `yaml:"maxFailCount" json:"maxFailCount"`
FailOnCheckMiss bool `yaml:"failOnCheckMiss" json:"failOnCheckMiss"`
// CGC (Custody Group Count) checks
ExpectCGC *uint64 `yaml:"expectCgc" json:"expectCgc"`
MinCGC *uint64 `yaml:"minCgc" json:"minCgc"`
MaxCGC *uint64 `yaml:"maxCgc" json:"maxCgc"`
// ENR checks
ExpectENRField map[string]interface{} `yaml:"expectEnrField" json:"expectEnrField"`
// PeerID checks
ExpectPeerIDPattern string `yaml:"expectPeerIdPattern" json:"expectPeerIdPattern"`
// P2P address checks
ExpectP2PAddressCount *int `yaml:"expectP2pAddressCount" json:"expectP2pAddressCount"`
ExpectP2PAddressMatch string `yaml:"expectP2pAddressMatch" json:"expectP2pAddressMatch"`
// Metadata checks
ExpectSeqNumber *uint64 `yaml:"expectSeqNumber" json:"expectSeqNumber"`
MinSeqNumber *uint64 `yaml:"minSeqNumber" json:"minSeqNumber"`
}
func DefaultConfig ¶
func DefaultConfig() Config
type IdentityCheckResult ¶
type IdentityCheckResult struct {
ClientName string `json:"clientName"`
PeerID string `json:"peerId"`
ENR string `json:"enr"`
P2PAddresses []string `json:"p2pAddresses"`
DiscoveryAddresses []string `json:"discoveryAddresses"`
SeqNumber uint64 `json:"seqNumber"`
Attnets string `json:"attnets"`
Syncnets string `json:"syncnets"`
CGC uint64 `json:"cgc"`
ENRFields map[string]interface{} `json:"enrFields"`
ChecksPassed bool `json:"checksPassed"`
FailureReasons []string `json:"failureReasons"`
}
type Task ¶
type Task struct {
// contains filtered or unexported fields
}
func (*Task) LoadConfig ¶
Click to show internal directories.
Click to hide internal directories.