Documentation
¶
Overview ¶
Package services contain the key components of the Chainlink node. This includes the Application, JobRunner, LogListener, and Scheduler.
Application ¶
The Application is the main component used for starting and stopping the Chainlink node.
JobRunner ¶
The JobRunner keeps track of Runs within a Job and ensures that they're executed in order. Within each Run, the tasks are also executed from the JobRunner.
JobSubscriber ¶
The JobSubscriber coordinates running job events with the EventLog in the Store, and also subscribes to the given address on the Ethereum blockchain.
Scheduler ¶
The Scheduler ensures that recurring events are executed according to their schedule, and one-time events occur only when the specified time has passed.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Checkable ¶ added in v1.2.0
type Checkable interface {
// Ready should return nil if ready, or an error message otherwise.
Ready() error
// Healthy should return nil if healthy, or an error message otherwise.
Healthy() error
}
Checkable should be implemented by any type requiring health checks.
type Checker ¶ added in v1.2.0
type Checker interface {
// Register a service for health checks.
Register(name string, service Checkable) error
// Unregister a service.
Unregister(name string) error
// IsReady returns the current readiness of the system.
// A system is considered ready if all checks are passing (no errors)
IsReady() (ready bool, errors map[string]error)
// IsHealthy returns the current health of the system.
// A system is considered healthy if all checks are passing (no errors)
IsHealthy() (healthy bool, errors map[string]error)
Start() error
Close() error
}
Checker provides a service which can be probed for system health.
func NewChecker ¶ added in v1.2.0
func NewChecker() Checker
type Config ¶ added in v1.2.0
type Config interface {
AutoPprofProfileRoot() string
AutoPprofPollInterval() models.Duration
AutoPprofGatherDuration() models.Duration
AutoPprofGatherTraceDuration() models.Duration
AutoPprofMaxProfileSize() utils.FileSize
AutoPprofCPUProfileRate() int
AutoPprofMemProfileRate() int
AutoPprofBlockProfileRate() int
AutoPprofMutexProfileFraction() int
AutoPprofMemThreshold() utils.FileSize
AutoPprofGoroutineThreshold() int
}
type Nurse ¶ added in v1.2.0
type Nurse struct {
utils.StartStopOnce
// contains filtered or unexported fields
}
func (*Nurse) GatherVitals ¶ added in v1.2.0
type ServiceCtx ¶ added in v1.3.0
type ServiceCtx interface {
// Start the service. Must quit immediately if the context is cancelled.
// The given context applies to Start function only and must not be retained.
Start(context.Context) error
// Close stops the Service.
// Invariants: Usually after this call the Service cannot be started
// again, you need to build a new Service to do so.
Close() error
Checkable
}
ServiceCtx is a former Service interface, that changed Start function to receive a context. This is needed for services that make HTTP calls or DB queries in Start.
Directories
¶
| Path | Synopsis |
|---|---|
|
signatures
|
|
|
cryptotest
Package cryptotest provides convenience functions for kyber-based APIs.
|
Package cryptotest provides convenience functions for kyber-based APIs. |
|
ethdss
Package ethdss implements the Distributed Schnorr Signature protocol from the //////////////////////////////////////////////////////////////////////////////
|
Package ethdss implements the Distributed Schnorr Signature protocol from the ////////////////////////////////////////////////////////////////////////////// |
|
ethschnorr
Package ethschnorr implements a version of the Schnorr signature which is //////////////////////////////////////////////////////////////////////////////
|
Package ethschnorr implements a version of the Schnorr signature which is ////////////////////////////////////////////////////////////////////////////// |
|
secp256k1
Package secp256k1 is an implementation of the kyber.{Group,Point,Scalar} //////////////////////////////////////////////////////////////////////////////
|
Package secp256k1 is an implementation of the kyber.{Group,Point,Scalar} ////////////////////////////////////////////////////////////////////////////// |