Documentation ¶
Index ¶
- Variables
- func EVMProvider(db *sqlx.DB, chain evm.Chain, lggr logger.Logger, spec job.Job, ...) (evmrelay.OCR2KeeperProvider, error)
- func FilterNamesFromSpec(spec *job.OCR2OracleSpec) (names []string, err error)
- func ValidatePluginConfig(cfg PluginConfig) error
- type Duration
- type LogProvider
- func (c *LogProvider) Close() error
- func (c *LogProvider) HealthReport() map[string]error
- func (c *LogProvider) Name() string
- func (c *LogProvider) PerformLogs(ctx context.Context) ([]plugintypes.PerformLog, error)
- func (c *LogProvider) Ready() error
- func (c *LogProvider) StaleReportLogs(ctx context.Context) ([]plugintypes.StaleReportLog, error)
- func (c *LogProvider) Start(ctx context.Context) error
- type PluginConfig
- type TransmitUnpacker
Constants ¶
This section is empty.
Variables ¶
View Source
var (
ErrNoChainFromSpec = fmt.Errorf("could not create chain from spec")
)
Functions ¶
func EVMProvider ¶
func FilterNamesFromSpec ¶
func FilterNamesFromSpec(spec *job.OCR2OracleSpec) (names []string, err error)
func ValidatePluginConfig ¶
func ValidatePluginConfig(cfg PluginConfig) error
Types ¶
type LogProvider ¶
type LogProvider struct {
// contains filtered or unexported fields
}
func EVMDependencies ¶
func EVMDependencies(spec job.Job, db *sqlx.DB, lggr logger.Logger, set evm.ChainSet, pr pipeline.Runner, mc *models.MercuryCredentials) (evmrelay.OCR2KeeperProvider, *kevm.EvmRegistry, ktypes.ReportEncoder, *LogProvider, error)
func NewLogProvider ¶
func (*LogProvider) Close ¶
func (c *LogProvider) Close() error
func (*LogProvider) HealthReport ¶
func (c *LogProvider) HealthReport() map[string]error
func (*LogProvider) Name ¶
func (c *LogProvider) Name() string
func (*LogProvider) PerformLogs ¶
func (c *LogProvider) PerformLogs(ctx context.Context) ([]plugintypes.PerformLog, error)
func (*LogProvider) Ready ¶
func (c *LogProvider) Ready() error
func (*LogProvider) StaleReportLogs ¶
func (c *LogProvider) StaleReportLogs(ctx context.Context) ([]plugintypes.StaleReportLog, error)
type PluginConfig ¶
type PluginConfig struct { // CacheExpiration is the duration of time a cached key is available. Use // this value to balance memory usage and RPC calls. A new set of keys is // generated with every block so a good setting might come from block time // times number of blocks of history to support not replaying reports. CacheExpiration Duration `json:"cacheExpiration"` // CacheEvictionInterval is a parameter for how often the cache attempts to // evict expired keys. This value should be short enough to ensure key // eviction doesn't block for too long, and long enough that it doesn't // cause frequent blocking. CacheEvictionInterval Duration `json:"cacheEvictionInterval"` // MaxServiceWorkers is the total number of go-routines allowed to make RPC // simultaneous calls on behalf of the sampling operation. This parameter // is 10x the number of available CPUs by default. The RPC calls are memory // heavy as opposed to CPU heavy as most of the work involves waiting on // network responses. MaxServiceWorkers int `json:"maxServiceWorkers"` // ServiceQueueLength is the buffer size for the RPC service queue. Fewer // workers or slower RPC responses will cause this queue to build up. // Adding new items to the queue will block if the queue becomes full. ServiceQueueLength int `json:"serviceQueueLength"` }
type TransmitUnpacker ¶
type TransmitUnpacker interface {
UnpackTransmitTxInput([]byte) ([]plugintypes.UpkeepResult, error)
}
Click to show internal directories.
Click to hide internal directories.