Documentation ¶
Index ¶
- Variables
- func FriendlyNumber[N constraints.Integer | *big.Int](n N) string
- type AppConfig
- type AuditLogger
- type AutoPprof
- type Backup
- type ChainType
- type Database
- type DatabaseBackupMode
- type Feature
- type File
- type FluxMonitor
- type Insecure
- type JobPipeline
- type Keeper
- type LDAP
- type Listener
- type Lock
- type Log
- type LogfFn
- type MFA
- type Mercury
- type OCR
- type OCR2
- type P2P
- type Password
- type Prometheus
- type Pyroscope
- type RateLimit
- type Registry
- type Sentry
- type TLS
- type TelemetryIngress
- type TelemetryIngressEndpoint
- type Threshold
- type Tracing
- type V1
- type V2
- type WebServer
Constants ¶
This section is empty.
Variables ¶
View Source
var (
ErrEnvUnset = errors.New("env var unset")
)
nolint
View Source
var ErrInvalidChainType = fmt.Errorf("must be one of %s or omitted", strings.Join([]string{ string(ChainArbitrum), string(ChainMetis), string(ChainXDai), string(ChainOptimismBedrock), string(ChainCelo), string(ChainKroma), string(ChainWeMix), string(ChainZkSync)}, ", "))
Functions ¶
func FriendlyNumber ¶ added in v2.3.0
func FriendlyNumber[N constraints.Integer | *big.Int](n N) string
FriendlyNumber returns a string printing the integer or big.Int in both decimal and hexadecimal formats.
Types ¶
type AppConfig ¶ added in v2.2.0
type AppConfig interface { AppID() uuid.UUID RootDir() string ShutdownGracePeriod() time.Duration InsecureFastScrypt() bool EVMEnabled() bool EVMRPCEnabled() bool CosmosEnabled() bool SolanaEnabled() bool StarkNetEnabled() bool Validate() error ValidateDB() error LogConfiguration(log, warn LogfFn) SetLogLevel(lvl zapcore.Level) error SetLogSQL(logSQL bool) SetPasswords(keystore, vrf *string) AuditLogger() AuditLogger AutoPprof() AutoPprof Database() Database Feature() Feature FluxMonitor() FluxMonitor Insecure() Insecure JobPipeline() JobPipeline Keeper() Keeper Log() Log Mercury() Mercury OCR() OCR OCR2() OCR2 P2P() P2P Password() Password Prometheus() Prometheus Pyroscope() Pyroscope Sentry() Sentry TelemetryIngress() TelemetryIngress Threshold() Threshold WebServer() WebServer Tracing() Tracing }
type AuditLogger ¶ added in v2.3.0
type AutoPprof ¶ added in v2.2.0
type AutoPprof interface { BlockProfileRate() int CPUProfileRate() int Enabled() bool GatherDuration() models.Duration GatherTraceDuration() models.Duration GoroutineThreshold() int MaxProfileSize() utils.FileSize MemProfileRate() int MemThreshold() utils.FileSize MutexProfileFraction() int PollInterval() models.Duration ProfileRoot() string }
type ChainType ¶
type ChainType string
ChainType denotes the chain or network to work with
const ( ChainArbitrum ChainType = "arbitrum" ChainMetis ChainType = "metis" ChainOptimismBedrock ChainType = "optimismBedrock" ChainXDai ChainType = "xdai" ChainCelo ChainType = "celo" ChainWeMix ChainType = "wemix" ChainKroma ChainType = "kroma" ChainZkSync ChainType = "zksync" )
nolint
type Database ¶ added in v2.2.0
type Database interface { Backup() Backup Listener() Listener Lock() Lock DefaultIdleInTxSessionTimeout() time.Duration DefaultLockTimeout() time.Duration DefaultQueryTimeout() time.Duration Dialect() dialects.DialectName LogSQL() bool MaxIdleConns() int MaxOpenConns() int MigrateDatabase() bool URL() url.URL }
type DatabaseBackupMode ¶
type DatabaseBackupMode string
var ( DatabaseBackupModeNone DatabaseBackupMode = "none" DatabaseBackupModeLite DatabaseBackupMode = "lite" DatabaseBackupModeFull DatabaseBackupMode = "full" )
type FluxMonitor ¶ added in v2.2.0
type JobPipeline ¶ added in v2.2.0
type LDAP ¶ added in v2.8.0
type LDAP interface { ServerAddress() string ReadOnlyUserLogin() string ReadOnlyUserPass() string ServerTLS() bool SessionTimeout() models.Duration QueryTimeout() time.Duration BaseUserAttr() string BaseDN() string UsersDN() string GroupsDN() string ActiveAttribute() string ActiveAttributeAllowedValue() string AdminUserGroupCN() string EditUserGroupCN() string RunUserGroupCN() string ReadUserGroupCN() string UserApiTokenEnabled() bool UserAPITokenDuration() models.Duration UpstreamSyncInterval() models.Duration UpstreamSyncRateLimit() models.Duration }
type Mercury ¶ added in v2.3.0
type Mercury interface {
Credentials(credName string) *ocr2models.MercuryCredentials
}
type OCR ¶ added in v2.3.0
type OCR interface { Enabled() bool // OCR1 config, can override in jobs, only ethereum. BlockchainTimeout() time.Duration ContractPollInterval() time.Duration ContractSubscribeInterval() time.Duration KeyBundleID() (string, error) ObservationTimeout() time.Duration SimulateTransactions() bool TransmitterAddress() (ethkey.EIP55Address, error) // OCR2 can support non-evm changes // OCR1 config, cannot override in jobs TraceLogging() bool DefaultTransactionQueueDepth() uint32 CaptureEATelemetry() bool }
OCR is a subset of global config relevant to OCR v1.
type OCR2 ¶ added in v2.3.0
type OCR2 interface { Enabled() bool // OCR2 config, can override in jobs, all chains ContractConfirmations() uint16 ContractTransmitterTransmitTimeout() time.Duration BlockchainTimeout() time.Duration DatabaseTimeout() time.Duration ContractPollInterval() time.Duration ContractSubscribeInterval() time.Duration KeyBundleID() (string, error) // OCR2 config, cannot override in jobs TraceLogging() bool CaptureEATelemetry() bool DefaultTransactionQueueDepth() uint32 SimulateTransactions() bool CaptureAutomationCustomTelemetry() bool }
OCR2 is a subset of global config relevant to OCR v2.
type P2P ¶ added in v2.3.0
type P2P interface { V2() V2 V1() V1 NetworkStack() (n ocrnetworking.NetworkingStack) PeerID() p2pkey.PeerID IncomingMessageBufferSize() int OutgoingMessageBufferSize() int TraceLogging() bool Enabled() bool }
type Prometheus ¶ added in v2.2.0
type Prometheus interface {
AuthToken() string
}
type TelemetryIngress ¶ added in v2.2.0
type TelemetryIngress interface { Logging() bool UniConn() bool BufferSize() uint MaxBatchSize() uint SendInterval() time.Duration SendTimeout() time.Duration UseBatchSend() bool Endpoints() []TelemetryIngressEndpoint ServerPubKey() string // Deprecated: Use TelemetryIngressEndpoint.ServerPubKey instead, this field will be removed in future versions URL() *url.URL // Deprecated: Use TelemetryIngressEndpoint.URL instead, this field will be removed in future versions }
type TelemetryIngressEndpoint ¶ added in v2.7.0
type V1 ¶ added in v2.3.0
type V1 interface { Enabled() bool AnnounceIP() net.IP AnnouncePort() uint16 DefaultBootstrapPeers() ([]string, error) DHTAnnouncementCounterUserPrefix() uint32 ListenIP() net.IP ListenPort() uint16 NewStreamTimeout() time.Duration BootstrapCheckInterval() time.Duration DHTLookupInterval() int PeerstoreWriteInterval() time.Duration }
type V2 ¶ added in v2.3.0
type V2 interface { Enabled() bool AnnounceAddresses() []string DefaultBootstrappers() (locators []ocrcommontypes.BootstrapperLocator) DeltaDial() models.Duration DeltaReconcile() models.Duration ListenAddresses() []string }
type WebServer ¶ added in v2.3.0
type WebServer interface { AuthenticationMethod() string AllowOrigins() string BridgeCacheTTL() time.Duration BridgeResponseURL() *url.URL HTTPMaxSize() int64 StartTimeout() time.Duration HTTPWriteTimeout() time.Duration HTTPPort() uint16 SessionReaperExpiration() models.Duration SecureCookies() bool SessionOptions() sessions.Options SessionTimeout() models.Duration ListenIP() net.IP TLS() TLS RateLimit() RateLimit MFA() MFA LDAP() LDAP }
Source Files ¶
- app_config.go
- audit_logger_config.go
- auto_pprof_config.go
- chaintype.go
- database_config.go
- feature_config.go
- flux_monitor_config.go
- insecure_config.go
- job_pipeline_config.go
- keeper_config.go
- logging_config.go
- mercury_config.go
- ocr2_config.go
- ocr_config.go
- p2p_config.go
- p2p_v1_config.go
- p2p_v2_config.go
- password_config.go
- presenters.go
- prometheus.go
- pyroscope_config.go
- sentry_config.go
- telemetry_ingress_config.go
- threshold_config.go
- tracing_config.go
- web_config.go
Click to show internal directories.
Click to hide internal directories.