Documentation ¶
Index ¶
Constants ¶
const ( // DefaultAPIAddress defines the default address to bind the API server to. DefaultAPIAddress = "tcp://localhost:1317" // DefaultGRPCAddress defines the default address to bind the gRPC server to. DefaultGRPCAddress = "localhost:9090" // DefaultGRPCMaxRecvMsgSize defines the default gRPC max message size in // bytes the server can receive. DefaultGRPCMaxRecvMsgSize = 1024 * 1024 * 10 // DefaultGRPCMaxSendMsgSize defines the default gRPC max message size in // bytes the server can send. DefaultGRPCMaxSendMsgSize = math.MaxInt32 )
Variables ¶
var DefaultConfigTemplate string
Functions ¶
func SetConfigTemplate ¶
SetConfigTemplate sets the custom app config template for the application.
func WriteConfigFile ¶
WriteConfigFile renders config using the template and writes it to configFilePath.
Types ¶
type ABCIListenerConfig ¶
type ABCIListenerConfig struct { Keys []string `mapstructure:"keys"` Plugin string `mapstructure:"plugin"` StopNodeOnErr bool `mapstructure:"stop-node-on-err"` }
ABCIListenerConfig defines application configuration for ABCIListener streaming service
type APIConfig ¶
type APIConfig struct { // Enable defines if the API server should be enabled. Enable bool `mapstructure:"enable"` // Swagger defines if swagger documentation should automatically be registered. Swagger bool `mapstructure:"swagger"` // EnableUnsafeCORS defines if CORS should be enabled (unsafe - use it at your own risk) EnableUnsafeCORS bool `mapstructure:"enabled-unsafe-cors"` // Address defines the API server to listen on Address string `mapstructure:"address"` // MaxOpenConnections defines the number of maximum open connections MaxOpenConnections uint `mapstructure:"max-open-connections"` // RPCReadTimeout defines the CometBFT RPC read timeout (in seconds) RPCReadTimeout uint `mapstructure:"rpc-read-timeout"` // RPCWriteTimeout defines the CometBFT RPC write timeout (in seconds) RPCWriteTimeout uint `mapstructure:"rpc-write-timeout"` // RPCMaxBodyBytes defines the CometBFT maximum request body (in bytes) RPCMaxBodyBytes uint `mapstructure:"rpc-max-body-bytes"` }
APIConfig defines the API listener configuration.
type BaseConfig ¶
type BaseConfig struct { // The minimum gas prices a validator is willing to accept for processing a // transaction. A transaction's fees must meet the minimum of any denomination // specified in this config (e.g. 0.25token1;0.0001token2). MinGasPrices string `mapstructure:"minimum-gas-prices"` // The maximum amount of gas a grpc/Rest query may consume. // If set to 0, it is unbounded. QueryGasLimit uint64 `mapstructure:"query-gas-limit"` Pruning string `mapstructure:"pruning"` PruningKeepRecent string `mapstructure:"pruning-keep-recent"` PruningInterval string `mapstructure:"pruning-interval"` // HaltHeight contains a non-zero block height at which a node will gracefully // halt and shutdown that can be used to assist upgrades and testing. // // Note: Commitment of state will be attempted on the corresponding block. HaltHeight uint64 `mapstructure:"halt-height"` // HaltTime contains a non-zero minimum block time (in Unix seconds) at which // a node will gracefully halt and shutdown that can be used to assist // upgrades and testing. // // Note: Commitment of state will be attempted on the corresponding block. HaltTime uint64 `mapstructure:"halt-time"` // MinRetainBlocks defines the minimum block height offset from the current // block being committed, such that blocks past this offset may be pruned // from CometBFT. It is used as part of the process of determining the // ResponseCommit.RetainHeight value during ABCI Commit. A value of 0 indicates // that no blocks should be pruned. // // This configuration value is only responsible for pruning CometBFT blocks. // It has no bearing on application state pruning which is determined by the // "pruning-*" configurations. // // Note: CometBFT block pruning is dependent on this parameter in conjunction // with the unbonding (safety threshold) period, state pruning and state sync // snapshot parameters to determine the correct minimum value of // ResponseCommit.RetainHeight. MinRetainBlocks uint64 `mapstructure:"min-retain-blocks"` // InterBlockCache enables inter-block caching. InterBlockCache bool `mapstructure:"inter-block-cache"` // IndexEvents defines the set of events in the form {eventType}.{attributeKey}, // which informs CometBFT what to index. If empty, all events will be indexed. IndexEvents []string `mapstructure:"index-events"` // IavlCacheSize set the size of the iavl tree cache. IAVLCacheSize uint64 `mapstructure:"iavl-cache-size"` // IAVLDisableFastNode enables or disables the fast sync node. IAVLDisableFastNode bool `mapstructure:"iavl-disable-fastnode"` // AppDBBackend defines the type of Database to use for the application and snapshots databases. // An empty string indicates that the CometBFT config's DBBackend value should be used. AppDBBackend string `mapstructure:"app-db-backend"` }
BaseConfig defines the server's basic configuration
type Config ¶
type Config struct { BaseConfig `mapstructure:",squash"` // Telemetry defines the application telemetry configuration Telemetry telemetry.Config `mapstructure:"telemetry"` API APIConfig `mapstructure:"api"` GRPC GRPCConfig `mapstructure:"grpc"` StateSync StateSyncConfig `mapstructure:"state-sync"` Streaming StreamingConfig `mapstructure:"streaming"` Mempool MempoolConfig `mapstructure:"mempool"` }
Config defines the server's top level configuration
func DefaultConfig ¶
func DefaultConfig() *Config
DefaultConfig returns server's default configuration.
func ParseConfig ¶
ParseConfig retrieves the default environment configuration for the application.
func (*Config) GetMinGasPrices ¶
GetMinGasPrices returns the validator's minimum gas prices based on the set configuration.
func (*Config) SetMinGasPrices ¶
SetMinGasPrices sets the validator's minimum gas prices.
func (Config) ValidateBasic ¶
ValidateBasic returns an error if min-gas-prices field is empty in BaseConfig. Otherwise, it returns nil.
type GRPCConfig ¶
type GRPCConfig struct { // Enable defines if the gRPC server should be enabled. Enable bool `mapstructure:"enable"` // Address defines the API server to listen on Address string `mapstructure:"address"` // MaxRecvMsgSize defines the max message size in bytes the server can receive. // The default value is 10MB. MaxRecvMsgSize int `mapstructure:"max-recv-msg-size"` // MaxSendMsgSize defines the max message size in bytes the server can send. // The default value is math.MaxInt32. MaxSendMsgSize int `mapstructure:"max-send-msg-size"` }
GRPCConfig defines configuration for the gRPC server.
type MempoolConfig ¶
type MempoolConfig struct { // MaxTxs defines the behavior of the mempool. A negative value indicates // the mempool is disabled entirely, zero indicates that the mempool is // unbounded in how many txs it may contain, and a positive value indicates // the maximum amount of txs it may contain. MaxTxs int `mapstructure:"max-txs"` }
MempoolConfig defines the configurations for the SDK built-in app-side mempool implementations.
type StateSyncConfig ¶
type StateSyncConfig struct { // SnapshotInterval sets the interval at which state sync snapshots are taken. // 0 disables snapshots. SnapshotInterval uint64 `mapstructure:"snapshot-interval"` // SnapshotKeepRecent sets the number of recent state sync snapshots to keep. // 0 keeps all snapshots. SnapshotKeepRecent uint32 `mapstructure:"snapshot-keep-recent"` }
StateSyncConfig defines the state sync snapshot configuration.
type StreamingConfig ¶
type StreamingConfig struct {
ABCI ABCIListenerConfig `mapstructure:"abci"`
}
StreamingConfig defines application configuration for external streaming services