pub struct ServeCommandConfiguration {Show 42 fields
pub environment: ExecutionEnvironment,
pub cardano_cli_path: PathBuf,
pub cardano_node_socket_path: PathBuf,
pub cardano_node_version: String,
pub network_magic: Option<u64>,
pub network: String,
pub chain_observer_type: ChainObserverType,
pub protocol_parameters: ProtocolParameters,
pub snapshot_uploader_type: SnapshotUploaderType,
pub snapshot_bucket_name: Option<String>,
pub snapshot_use_cdn_domain: bool,
pub server_ip: String,
pub server_port: u16,
pub public_server_url: Option<String>,
pub run_interval: u64,
pub db_directory: PathBuf,
pub snapshot_directory: PathBuf,
pub data_stores_directory: PathBuf,
pub genesis_verification_key: HexEncodedGenesisVerificationKey,
pub reset_digests_cache: bool,
pub disable_digests_cache: bool,
pub store_retention_limit: Option<usize>,
pub era_reader_adapter_type: EraReaderAdapterType,
pub era_reader_adapter_params: Option<String>,
pub ancillary_files_signer_config: AncillaryFilesSignerConfig,
pub signed_entity_types: Option<String>,
pub snapshot_compression_algorithm: CompressionAlgorithm,
pub zstandard_parameters: Option<ZstandardCompressionParameters>,
pub cexplorer_pools_url: Option<String>,
pub signer_importer_run_interval: u64,
pub allow_unparsable_block: bool,
pub cardano_transactions_prover_cache_pool_size: usize,
pub cardano_transactions_database_connection_pool_size: usize,
pub cardano_transactions_signing_config: CardanoTransactionsSigningConfig,
pub cardano_transactions_prover_max_hashes_allowed_by_request: usize,
pub cardano_transactions_block_streamer_max_roll_forwards_per_poll: usize,
pub enable_metrics_server: bool,
pub metrics_server_ip: String,
pub metrics_server_port: u16,
pub persist_usage_report_interval_in_seconds: u64,
pub leader_aggregator_endpoint: Option<String>,
pub custom_origin_tag_white_list: Option<String>,
}
Expand description
Serve command configuration
Fields§
§environment: ExecutionEnvironment
What kind of runtime environment the configuration is meant to.
cardano_cli_path: PathBuf
Cardano CLI tool path
cardano_node_socket_path: PathBuf
Path of the socket used by the Cardano CLI tool to communicate with the Cardano node
cardano_node_version: String
Cardano node version.
NOTE: This cannot be verified for now (see this issue). This is why it has to be manually given to the Aggregator
network_magic: Option<u64>
Cardano Network Magic number
useful for TestNet & DevNet
network: String
Cardano network
chain_observer_type: ChainObserverType
Cardano chain observer type
protocol_parameters: ProtocolParameters
Protocol parameters
snapshot_uploader_type: SnapshotUploaderType
Type of snapshot uploader to use
snapshot_bucket_name: Option<String>
Bucket name where the snapshots are stored if snapshot_uploader_type is Gcp
snapshot_use_cdn_domain: bool
Use CDN domain to construct snapshot urls if snapshot_uploader_type is Gcp
server_ip: String
Server listening IP
server_port: u16
Server listening port
public_server_url: Option<String>
Server URL that can be accessed from the outside
run_interval: u64
Run Interval is the interval between two runtime cycles in ms
db_directory: PathBuf
Directory of the Cardano node store.
snapshot_directory: PathBuf
Directory to store snapshot
data_stores_directory: PathBuf
Directory to store aggregator databases
genesis_verification_key: HexEncodedGenesisVerificationKey
Genesis verification key
reset_digests_cache: bool
Should the immutable cache be reset or not
disable_digests_cache: bool
Use the digest caching strategy
store_retention_limit: Option<usize>
Max number of records in stores. When new records are added, oldest records are automatically deleted so there can always be at max the number of records specified by this setting.
era_reader_adapter_type: EraReaderAdapterType
Era reader adapter type
era_reader_adapter_params: Option<String>
Era reader adapter parameters
ancillary_files_signer_config: AncillaryFilesSignerConfig
Configuration of the ancillary files signer
Can either be a secret key or a key stored in a Google Cloud Platform KMS account.
IMPORTANT: The cryptographic scheme used is ED25519
signed_entity_types: Option<String>
Signed entity types parameters (discriminants names in an ordered, case-sensitive, comma separated list).
The values MithrilStakeDistribution
and CardanoImmutableFilesFull
are prepended
automatically to the list.
snapshot_compression_algorithm: CompressionAlgorithm
Compression algorithm used for the snapshot archive artifacts.
zstandard_parameters: Option<ZstandardCompressionParameters>
Specific parameters when snapshot_compression_algorithm is set to zstandard.
cexplorer_pools_url: Option<String>
Url to CExplorer list of pools to import as signer in the database.
signer_importer_run_interval: u64
Time interval at which the signers in Self::cexplorer_pools_url will be imported (in minutes).
allow_unparsable_block: bool
If set no error is returned in case of unparsable block and an error log is written instead.
Will be ignored on (pre)production networks.
cardano_transactions_prover_cache_pool_size: usize
Cardano transactions prover cache pool size
cardano_transactions_database_connection_pool_size: usize
Cardano transactions database connection pool size
cardano_transactions_signing_config: CardanoTransactionsSigningConfig
Cardano transactions signing configuration
cardano_transactions_prover_max_hashes_allowed_by_request: usize
Maximum number of transactions hashes allowed by request to the prover of the Cardano transactions
cardano_transactions_block_streamer_max_roll_forwards_per_poll: usize
The maximum number of roll forwards during a poll of the block streamer when importing transactions.
enable_metrics_server: bool
Enable metrics server (Prometheus endpoint on /metrics).
metrics_server_ip: String
Metrics HTTP Server IP.
metrics_server_port: u16
Metrics HTTP Server listening port.
persist_usage_report_interval_in_seconds: u64
Time interval at which usage metrics are persisted in event database (in seconds).
leader_aggregator_endpoint: Option<String>
This is the endpoint of the aggregator that will be used to fetch the latest epoch settings and store the signer registrations when the aggregator is running in a follower mode. If this is not set, the aggregator will run in a leader mode.
custom_origin_tag_white_list: Option<String>
Custom origin tag of client request added to the whitelist (comma separated list).
Implementations§
Source§impl ServeCommandConfiguration
impl ServeCommandConfiguration
Sourcepub fn new_sample(tmp_path: PathBuf) -> Self
pub fn new_sample(tmp_path: PathBuf) -> Self
Create a sample configuration mainly for tests
Sourcepub fn get_local_server_url(&self) -> StdResult<SanitizedUrlWithTrailingSlash>
pub fn get_local_server_url(&self) -> StdResult<SanitizedUrlWithTrailingSlash>
Build the local server URL from configuration.
Trait Implementations§
Source§impl Clone for ServeCommandConfiguration
impl Clone for ServeCommandConfiguration
Source§fn clone(&self) -> ServeCommandConfiguration
fn clone(&self) -> ServeCommandConfiguration
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreSource§impl ConfigurationSource for ServeCommandConfiguration
impl ConfigurationSource for ServeCommandConfiguration
Source§fn environment(&self) -> ExecutionEnvironment
fn environment(&self) -> ExecutionEnvironment
Source§fn cardano_cli_path(&self) -> PathBuf
fn cardano_cli_path(&self) -> PathBuf
Source§fn cardano_node_socket_path(&self) -> PathBuf
fn cardano_node_socket_path(&self) -> PathBuf
Source§fn cardano_node_version(&self) -> String
fn cardano_node_version(&self) -> String
Source§fn chain_observer_type(&self) -> ChainObserverType
fn chain_observer_type(&self) -> ChainObserverType
Source§fn protocol_parameters(&self) -> ProtocolParameters
fn protocol_parameters(&self) -> ProtocolParameters
Source§fn snapshot_uploader_type(&self) -> SnapshotUploaderType
fn snapshot_uploader_type(&self) -> SnapshotUploaderType
Source§fn snapshot_bucket_name(&self) -> Option<String>
fn snapshot_bucket_name(&self) -> Option<String>
Source§fn snapshot_use_cdn_domain(&self) -> bool
fn snapshot_use_cdn_domain(&self) -> bool
Source§fn server_port(&self) -> u16
fn server_port(&self) -> u16
Source§fn public_server_url(&self) -> Option<String>
fn public_server_url(&self) -> Option<String>
Source§fn run_interval(&self) -> u64
fn run_interval(&self) -> u64
Source§fn db_directory(&self) -> PathBuf
fn db_directory(&self) -> PathBuf
Source§fn snapshot_directory(&self) -> PathBuf
fn snapshot_directory(&self) -> PathBuf
Source§fn data_stores_directory(&self) -> PathBuf
fn data_stores_directory(&self) -> PathBuf
Source§fn genesis_verification_key(&self) -> HexEncodedGenesisVerificationKey
fn genesis_verification_key(&self) -> HexEncodedGenesisVerificationKey
Source§fn reset_digests_cache(&self) -> bool
fn reset_digests_cache(&self) -> bool
Source§fn disable_digests_cache(&self) -> bool
fn disable_digests_cache(&self) -> bool
Source§fn store_retention_limit(&self) -> Option<usize>
fn store_retention_limit(&self) -> Option<usize>
Source§fn era_reader_adapter_type(&self) -> EraReaderAdapterType
fn era_reader_adapter_type(&self) -> EraReaderAdapterType
Source§fn era_reader_adapter_params(&self) -> Option<String>
fn era_reader_adapter_params(&self) -> Option<String>
Source§fn ancillary_files_signer_config(&self) -> AncillaryFilesSignerConfig
fn ancillary_files_signer_config(&self) -> AncillaryFilesSignerConfig
Source§fn signed_entity_types(&self) -> Option<String>
fn signed_entity_types(&self) -> Option<String>
Source§fn snapshot_compression_algorithm(&self) -> CompressionAlgorithm
fn snapshot_compression_algorithm(&self) -> CompressionAlgorithm
Source§fn zstandard_parameters(&self) -> Option<ZstandardCompressionParameters>
fn zstandard_parameters(&self) -> Option<ZstandardCompressionParameters>
Source§fn cexplorer_pools_url(&self) -> Option<String>
fn cexplorer_pools_url(&self) -> Option<String>
Source§fn signer_importer_run_interval(&self) -> u64
fn signer_importer_run_interval(&self) -> u64
cexplorer_pools_url
will be imported (in minutes).Source§fn allow_unparsable_block(&self) -> bool
fn allow_unparsable_block(&self) -> bool
Source§fn cardano_transactions_prover_cache_pool_size(&self) -> usize
fn cardano_transactions_prover_cache_pool_size(&self) -> usize
Source§fn cardano_transactions_database_connection_pool_size(&self) -> usize
fn cardano_transactions_database_connection_pool_size(&self) -> usize
Source§fn cardano_transactions_signing_config(
&self,
) -> CardanoTransactionsSigningConfig
fn cardano_transactions_signing_config( &self, ) -> CardanoTransactionsSigningConfig
Source§fn cardano_transactions_prover_max_hashes_allowed_by_request(&self) -> usize
fn cardano_transactions_prover_max_hashes_allowed_by_request(&self) -> usize
Source§fn cardano_transactions_block_streamer_max_roll_forwards_per_poll(
&self,
) -> usize
fn cardano_transactions_block_streamer_max_roll_forwards_per_poll( &self, ) -> usize
Source§fn enable_metrics_server(&self) -> bool
fn enable_metrics_server(&self) -> bool
Source§fn metrics_server_ip(&self) -> String
fn metrics_server_ip(&self) -> String
Source§fn metrics_server_port(&self) -> u16
fn metrics_server_port(&self) -> u16
Source§fn persist_usage_report_interval_in_seconds(&self) -> u64
fn persist_usage_report_interval_in_seconds(&self) -> u64
Source§fn custom_origin_tag_white_list(&self) -> Option<String>
fn custom_origin_tag_white_list(&self) -> Option<String>
Source§fn get_server_url(&self) -> StdResult<SanitizedUrlWithTrailingSlash>
fn get_server_url(&self) -> StdResult<SanitizedUrlWithTrailingSlash>
Source§fn get_network(&self) -> StdResult<CardanoNetwork>
fn get_network(&self) -> StdResult<CardanoNetwork>
Source§fn get_sqlite_dir(&self) -> PathBuf
fn get_sqlite_dir(&self) -> PathBuf
Source§fn get_snapshot_dir(&self) -> StdResult<PathBuf>
fn get_snapshot_dir(&self) -> StdResult<PathBuf>
Source§fn safe_epoch_retention_limit(&self) -> Option<u64>
fn safe_epoch_retention_limit(&self) -> Option<u64>
Source§fn compute_allowed_signed_entity_types_discriminants(
&self,
) -> StdResult<BTreeSet<SignedEntityTypeDiscriminants>>
fn compute_allowed_signed_entity_types_discriminants( &self, ) -> StdResult<BTreeSet<SignedEntityTypeDiscriminants>>
Source§fn allow_http_serve_directory(&self) -> bool
fn allow_http_serve_directory(&self) -> bool
Source§fn get_epoch_settings_configuration(&self) -> AggregatorEpochSettings
fn get_epoch_settings_configuration(&self) -> AggregatorEpochSettings
Source§fn is_follower_aggregator(&self) -> bool
fn is_follower_aggregator(&self) -> bool
Source§fn compute_origin_tag_white_list(&self) -> HashSet<String>
fn compute_origin_tag_white_list(&self) -> HashSet<String>
Source§impl Debug for ServeCommandConfiguration
impl Debug for ServeCommandConfiguration
Source§impl<'de> Deserialize<'de> for ServeCommandConfiguration
impl<'de> Deserialize<'de> for ServeCommandConfiguration
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Auto Trait Implementations§
impl Freeze for ServeCommandConfiguration
impl RefUnwindSafe for ServeCommandConfiguration
impl Send for ServeCommandConfiguration
impl Sync for ServeCommandConfiguration
impl Unpin for ServeCommandConfiguration
impl UnwindSafe for ServeCommandConfiguration
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CheckedAs for T
impl<T> CheckedAs for T
Source§fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
fn checked_as<Dst>(self) -> Option<Dst>where
T: CheckedCast<Dst>,
Source§impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
impl<Src, Dst> CheckedCastFrom<Src> for Dstwhere
Src: CheckedCast<Dst>,
Source§fn checked_cast_from(src: Src) -> Option<Dst>
fn checked_cast_from(src: Src) -> Option<Dst>
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request
§impl<L> LayerExt<L> for L
impl<L> LayerExt<L> for L
§fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
fn named_layer<S>(&self, service: S) -> Layered<<L as Layer<S>>::Service, S>where
L: Layer<S>,
Layered
].