package config
- Alphabetic
- Public
- Protected
Type Members
- trait AdminServerConfig extends ServerConfig
A variant of ServerConfig that by default listens to connections only on the loopback interface.
- final case class ApiLoggingConfig(messagePayloads: Option[Boolean] = None, maxMethodLength: Int = ApiLoggingConfig.defaultMaxMethodLength, maxMessageLines: Int = ApiLoggingConfig.defaultMaxMessageLines, maxStringLength: Int = ApiLoggingConfig.defaultMaxStringLength, maxMetadataSize: Int = ApiLoggingConfig.defaultMaxMetadataSize) extends Product with Serializable
Control logging of the ApiRequestLogger
Control logging of the ApiRequestLogger
Every GRPC service invocation is logged through the ApiRequestLogger. This allows to monitor all incoming traffic to a node (ledger API, sequencer API, admin API).
- messagePayloads
Indicates whether to log message payloads. (To be disabled in production!) Also applies to metadata. None is equivalent to false.
- maxMethodLength
indicates how much to abbreviate the name of the called method. E.g. "com.digitalasset.canton.MyMethod" may get abbreviated to "c.d.c.MyMethod". The last token will never get abbreviated.
- maxMessageLines
maximum number of lines to log for a message
- maxStringLength
maximum number of characters to log for a string within a message
- maxMetadataSize
maximum size of metadata
- sealed trait ApiType extends PrettyPrinting
- sealed trait BaseTlsArguments extends AnyRef
- sealed trait BatchAggregatorConfig extends Product with Serializable
Parameters for that batcher that batches queries (e.g., to a DB).
- final case class CacheConfig(maximumSize: PositiveNumeric[Long], expireAfterAccess: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofMinutes(10)) extends Product with Serializable
Configurations settings for a single cache
Configurations settings for a single cache
- maximumSize
the maximum size of the cache
- expireAfterAccess
how quickly after last access items should be expired from the cache
- final case class CachingConfigs(indexedStrings: CacheConfig = CachingConfigs.defaultStaticStringCache, contractStore: CacheConfig = CachingConfigs.defaultContractStoreCache, topologySnapshot: CacheConfig = CachingConfigs.defaultTopologySnapshotCache, partyCache: CacheConfig = CachingConfigs.defaultPartyCache, participantCache: CacheConfig = CachingConfigs.defaultParticipantCache, keyCache: CacheConfig = CachingConfigs.defaultKeyCache, packageVettingCache: CacheConfig = CachingConfigs.defaultPackageVettingCache, mySigningKeyCache: CacheConfig = CachingConfigs.defaultMySigningKeyCache) extends Product with Serializable
Configuration settings for various internal caches
Configuration settings for various internal caches
- indexedStrings
cache size configuration for the static string index cache
- contractStore
cache size configuration for the contract store
- topologySnapshot
cache size configuration for topology snapshots
- case class CantonCommunityConfig(domains: Map[InstanceName, CommunityDomainConfig] = Map.empty, participants: Map[InstanceName, CommunityParticipantConfig] = Map.empty, remoteDomains: Map[InstanceName, RemoteDomainConfig] = Map.empty, remoteParticipants: Map[InstanceName, RemoteParticipantConfig] = Map.empty, monitoring: MonitoringConfig = MonitoringConfig(), parameters: CantonParameters = CantonParameters(), features: CantonFeatures = CantonFeatures()) extends CantonConfig with ConfigDefaults[CantonCommunityConfig] with Product with Serializable
- trait CantonConfig extends AnyRef
Root configuration parameters for a single Canton process.
- final case class CantonEnterpriseConfig(sequencers: Map[InstanceName, SequencerNodeConfig] = Map.empty, domains: Map[InstanceName, EnterpriseDomainConfig] = Map.empty, domainManagers: Map[InstanceName, DomainManagerConfig] = Map.empty, mediators: Map[InstanceName, MediatorNodeConfig] = Map.empty, participants: Map[InstanceName, EnterpriseParticipantConfig] = Map.empty, remoteSequencers: Map[InstanceName, RemoteSequencerConfig] = Map.empty, remoteMediators: Map[InstanceName, RemoteMediatorConfig] = Map.empty, remoteDomains: Map[InstanceName, RemoteDomainConfig] = Map.empty, remoteDomainManagers: Map[InstanceName, RemoteDomainManagerConfig] = Map.empty, remoteParticipants: Map[InstanceName, RemoteParticipantConfig] = Map.empty, monitoring: MonitoringConfig = MonitoringConfig(), parameters: CantonParameters = CantonParameters(), features: CantonFeatures = CantonFeatures()) extends CantonConfig with ConfigDefaults[CantonEnterpriseConfig] with Product with Serializable
- case class CantonFeatures(enablePreviewCommands: Boolean = false, enableTestingCommands: Boolean = false, enableRepairCommands: Boolean = false) extends Product with Serializable
Control which features are turned on / off in Canton
Control which features are turned on / off in Canton
- enablePreviewCommands
Feature flag to enable the set of commands that use functionality which we don't deem stable.
- enableTestingCommands
Feature flag to enable the set of commands used by Canton developers for testing purposes.
- enableRepairCommands
Feature flag to enable the set of commands used by Canton operators for manual repair purposes.
- final case class CantonParameters(clock: ClockConfig = ClockConfig.WallClock(), enableAdditionalConsistencyChecks: Boolean = false, manualStart: Boolean = false, nonStandardConfig: Boolean = false, portsFile: Option[String] = None, timeouts: TimeoutSettings = TimeoutSettings(), retentionPeriodDefaults: RetentionPeriodDefaults = RetentionPeriodDefaults(), console: AmmoniteConsoleConfig = AmmoniteConsoleConfig()) extends Product with Serializable
Parameters for testing Canton.
Parameters for testing Canton. Use default values in a production environment.
- enableAdditionalConsistencyChecks
if true, run additional consistency checks. This will degrade performance.
- manualStart
If set to true, the nodes have to be manually started via console (default false)
- nonStandardConfig
don't fail config validation on non-standard configuration settings
- portsFile
A ports file name, where the ports of all participants will be written to after startup
- timeouts
Sets the timeouts used for processing and console
- sealed trait CheckConfig extends AnyRef
Configuration for a check
- case class ClientConfig(address: String = "127.0.0.1", port: Port, tls: Option[TlsClientConfig] = None, keepAliveClient: Option[KeepAliveClientConfig] = Some(KeepAliveClientConfig())) extends Product with Serializable
A client configuration to a corresponding server configuration
- sealed trait ClockConfig extends Product with Serializable
- case class CommunityAdminServerConfig(address: String = defaultAddress, internalPort: Option[Port] = None, tls: Option[TlsServerConfig] = None, keepAliveServer: Option[KeepAliveServerConfig] = Some(KeepAliveServerConfig()), maxInboundMessageSize: NonNegativeInt = ServerConfig.defaultMaxInboundMessageSize) extends AdminServerConfig with CommunityServerConfig with Product with Serializable
- sealed trait CommunityDbConfig extends CommunityStorageConfig with DbConfig
- trait CommunityLocalNodeConfig extends LocalNodeConfig
- trait CommunityServerConfig extends ServerConfig
- sealed trait CommunityStorageConfig extends StorageConfig
Determines how a node stores persistent data.
- sealed trait ConcurrencyLimitConfig extends AnyRef
Use Netflix's https://github.com/Netflix/concurrency-limits to cap the number of concurrent requests.
- trait ConfigDefaults[Self] extends AnyRef
- final case class ConsoleCommandTimeout(bounded: TimeoutDuration = ConsoleCommandTimeout.defaultBoundedTimeout, unbounded: TimeoutDuration = ConsoleCommandTimeout.defaultUnboundedTimeout, ledgerCommand: TimeoutDuration = ConsoleCommandTimeout.defaultLedgerCommandsTimeout, ping: TimeoutDuration = ConsoleCommandTimeout.defaultPingTimeout, testingBong: TimeoutDuration = ConsoleCommandTimeout.defaultTestingBongTimeout) extends Product with Serializable
Configuration for console command timeouts
Configuration for console command timeouts
- bounded
timeout on how long "bounded" operations, i.e. operations which normally are supposed to conclude in a fixed timeframe can run before the console considers them as failed.
- unbounded
timeout on how long "unbounded" operations can run, potentially infinite.
- ledgerCommand
default timeout used for ledger commands
- ping
default ping timeout
- testingBong
default bong timeout
- case class CryptoConfig(provider: CryptoProvider = CryptoProvider.Tink, signing: CryptoSchemeConfig[SigningKeyScheme] = CryptoSchemeConfig(), encryption: CryptoSchemeConfig[EncryptionKeyScheme] = CryptoSchemeConfig(), symmetric: CryptoSchemeConfig[SymmetricKeyScheme] = CryptoSchemeConfig(), hash: CryptoSchemeConfig[HashAlgorithm] = CryptoSchemeConfig()) extends Product with Serializable
Cryptography configuration.
Cryptography configuration.
- provider
The crypto provider implementation to use.
- signing
The signing key scheme configuration.
- encryption
The encryption key scheme configuration.
- symmetric
The symmetric key scheme configuration.
- hash
The hash algorithm configuration.
- sealed trait CryptoProvider extends PrettyPrinting
- case class CryptoProviderScheme[S](default: S, supported: NonEmpty[Set[S]]) extends Product with Serializable
- case class CryptoSchemeConfig[S](default: Option[S] = None, allowed: Option[NonEmpty[Set[S]]] = None) extends Product with Serializable
Configures the optional default and allowed schemes of kind S.
Configures the optional default and allowed schemes of kind S.
- default
The optional scheme to use. If none is specified, use the provider's default scheme of kind S.
- allowed
The optional allowed schemes to use. If none is specified, all the provider's supported schemes of kind S are allowed.
- final case class DbCacheConfig(maximumCacheSize: PositiveNumeric[Long] = DbCacheConfig.defaultMaximumCacheSize) extends Product with Serializable
Parameters for the in-memory cache that can be used in front of a db-based data provider.
Parameters for the in-memory cache that can be used in front of a db-based data provider.
- maximumCacheSize
Maximum number of elements of the cache.
- trait DbConfig extends StorageConfig with PrettyPrinting
Dictates that persistent data is stored in a database.
- final case class DeadlockDetectionConfig(enabled: Boolean = true, interval: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(3), maxReports: Int = 10, reportAsWarnings: Boolean = true) extends Product with Serializable
Deadlock detection configuration
Deadlock detection configuration
A simple deadlock detection method. Using a background scheduler, we schedule a trivial future on the EC. If the Future is not executed until we check again, we alert.
- enabled
if true, we'll monitor the EC for deadlocks (or slow processings)
- interval
how often we check the EC
- maxReports
after how many warnings are we going to shut up.
- reportAsWarnings
if false, the deadlock detector will report using debug messages
- case class DomainCcfConfig(memberKeyStore: KeyStoreConfig, memberKeyName: String) extends Product with Serializable
Configuration for the domain that uses a CCF-based sequencer.
Configuration for the domain that uses a CCF-based sequencer.
- memberKeyStore
Key store with the member's private key and certificate to use for governance operations.
- memberKeyName
Name of the member's key name in the member key store to sign governance requests with.
- case class EnterpriseAdminServerConfig(address: String = AdminServerConfig.defaultAddress, internalPort: Option[Port] = None, tls: Option[TlsServerConfig] = None, keepAliveServer: Option[KeepAliveServerConfig] = Some(KeepAliveServerConfig()), maxInboundMessageSize: NonNegativeInt = ServerConfig.defaultMaxInboundMessageSize, concurrencyLimit: Option[ConcurrencyLimitConfig] = None) extends AdminServerConfig with EnterpriseServerConfig with Product with Serializable
- sealed trait EnterpriseDbConfig[A <: EnterpriseDbConfig[A]] extends EnterpriseStorageConfig with DbConfig
- trait EnterpriseLocalNodeConfig extends LocalNodeConfig
- trait EnterpriseServerConfig extends ServerConfig
- sealed trait EnterpriseStorageConfig extends StorageConfig
- case class FixedLimit(limit: Int) extends LimitConfig with Product with Serializable
A constant concurrency limit.
- case class Gradient2Limit(maxConcurrency: Option[Int], smoothing: Option[Double], rttTolerance: Option[Double]) extends LimitConfig with Product with Serializable
Gradient-based algorithm to estimate the ideal limit.
Gradient-based algorithm to estimate the ideal limit.
- trait H2DbConfig extends DbConfig
- final case class HealthConfig(server: HealthServerConfig, check: CheckConfig) extends Product with Serializable
Configuration to expose a health endpoint on the given
server
running the configured checkConfiguration to expose a health endpoint on the given
server
running the configured check- server
Server details for hosting the health endpoint
- check
Check for determining whether this canton process is healthy
- final case class HealthServerConfig(address: String = "0.0.0.0", port: Port) extends Product with Serializable
Configuration of health server backend.
- case class InitConfig(autoInit: Boolean = true, instanceIdHint: Option[String36] = None, startupFailFast: Boolean = true) extends InitConfigBase with Product with Serializable
Configuration for the node's init process
Configuration for the node's init process
- autoInit
if true, the node will automatically initialize itself. In particular, it will create a new namespace, and initialize its member id and its keys for signing and encryption. If false, the user has to manually perform these steps.
- instanceIdHint
if an instance id hint is provided it will be used during initialization to set the instance-id. otherwise a UUID will be used.
- startupFailFast
if true, the node will fail-fast when resources such as the database cannot be connected to if false, the node will wait indefinitely for resources such as the database to come up
- trait InitConfigBase extends AnyRef
- case class KeepAliveClientConfig(time: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(40), timeout: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(20)) extends Product with Serializable
GRPC keep alive client configuration
GRPC keep alive client configuration
Settings according to https://grpc.github.io/grpc-java/javadoc/io/grpc/ManagedChannelBuilder.html#keepAliveTime-long-java.util.concurrent.TimeUnit-
- time
Sets the time without read activity before sending a keepalive ping. Do not set to small numbers (default is 40s)
- timeout
Sets the time waiting for read activity after sending a keepalive ping (default is 20s)
- case class KeepAliveServerConfig(time: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(40), timeout: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(20), permitKeepAliveTime: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(20)) extends Product with Serializable
GRPC keep alive server configuration
GRPC keep alive server configuration
- time
Sets the time without read activity before sending a keepalive ping. Do not set to small numbers (default is 40s) Corresponds to https://grpc.github.io/grpc-java/javadoc/io/grpc/netty/NettyServerBuilder.html#keepAliveTime-long-java.util.concurrent.TimeUnit-
- timeout
Sets the time waiting for read activity after sending a keepalive ping (default is 20s) Corresponds to https://grpc.github.io/grpc-java/javadoc/io/grpc/netty/NettyServerBuilder.html#keepAliveTimeout-long-java.util.concurrent.TimeUnit-
- permitKeepAliveTime
Sets the most aggressive keep-alive time that clients are permitted to configure (default is 20s) Corresponds to https://grpc.github.io/grpc-java/javadoc/io/grpc/netty/NettyServerBuilder.html#permitKeepAliveTime-long-java.util.concurrent.TimeUnit-
- case class KeyStoreConfig(path: File, password: Password) extends Product with Serializable
Configuration for Java keystore with optional password protection.
- sealed trait LimitConfig extends ConcurrencyLimitConfig
Corresponds to https://javadoc.io/doc/com.netflix.concurrency-limits/concurrency-limits-core/latest/com/netflix/concurrency/limits/Limit.html
- trait LocalNodeConfig extends NodeConfig
- trait LocalNodeParameters extends AnyRef
- final case class LoggingConfig(api: ApiLoggingConfig = ApiLoggingConfig(), eventDetails: Boolean = false) extends Product with Serializable
Detailed logging configurations
Detailed logging configurations
This section allows to configure additional data such as transaction details to be logged to the standard logback system
- api
Configuration settings for the ApiRequestLogger
- eventDetails
If set to true, we will log substantial details of internal messages being processed. To be disabled in production!
- trait MemoryStorageConfig extends StorageConfig
- final case class MonitoringConfig(deadlockDetection: DeadlockDetectionConfig = DeadlockDetectionConfig(), health: Option[HealthConfig] = None, metrics: MetricsConfig = MetricsConfig(), delayLoggingThreshold: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofSeconds(20), tracing: TracingConfig = TracingConfig(), logMessagePayloads: Option[Boolean] = None, logQueryCost: Option[QueryCostMonitoringConfig] = None, logSlowFutures: Boolean = false, logging: LoggingConfig = LoggingConfig()) extends LazyLogging with Product with Serializable
Configuration for metrics and tracing
Configuration for metrics and tracing
- deadlockDetection
Should we regularly check our environment EC for deadlocks?
- health
Optional Health check to expose an http server to monitor is the canton process is healthy
- metrics
Optional Metrics Reporter used to expose internally captured metrics
- delayLoggingThreshold
Logs a warning message once the sequencer client falls behind in processing messages from the sequencer (based on the sequencing timestamp).
- tracing
Tracing configuration
- logMessagePayloads
Determines whether message payloads (as well as metadata) sent through GRPC are logged.
- logQueryCost
Determines whether to log the 15 most expensive db queries
- logSlowFutures
Whether we should active log slow futures (where instructed)
- trait NodeConfig extends AnyRef
- final case class Password(pw: String) extends AnyVal with Product with Serializable
Password wrapper for keystores to prevent the values being printed in logs.
Password wrapper for keystores to prevent the values being printed in logs.
- pw
password value - public for supporting PureConfig parsing but callers should prefer accessing through unwrap
- trait PostgresDbConfig extends DbConfig
- final case class ProcessingTimeout(unbounded: TimeoutDuration = DefaultProcessingTimeouts.unbounded, io: TimeoutDuration = DefaultProcessingTimeouts.io, default: TimeoutDuration = DefaultProcessingTimeouts.default, network: TimeoutDuration = DefaultProcessingTimeouts.network, shutdownProcessing: TimeoutDuration = DefaultProcessingTimeouts.shutdownProcessing, shutdownNetwork: TimeoutDuration = DefaultProcessingTimeouts.shutdownNetwork, shutdownShort: TimeoutDuration = DefaultProcessingTimeouts.shutdownShort, closing: TimeoutDuration = DefaultProcessingTimeouts.closing, inspection: TimeoutDuration = DefaultProcessingTimeouts.inspection, storageMaxRetryInterval: TimeoutDuration = DefaultProcessingTimeouts.maxRetryInterval, verifyActive: TimeoutDuration = DefaultProcessingTimeouts.verifyActive, activeInit: TimeoutDuration = DefaultProcessingTimeouts.activeInit, slowFutureWarn: TimeoutDuration = DefaultProcessingTimeouts.slowFutureWarn) extends Product with Serializable
Configuration for internal await timeouts
Configuration for internal await timeouts
- unbounded
timeout on how long "unbounded" operations can run. should be infinite in theory.
- io
timeout for disk based operations
- default
default finite processing timeout
- network
timeout for things related to networking
- shutdownProcessing
timeout used for shutdown of some processing where we'd like to keep the result (long)
- shutdownNetwork
timeout used for shutdown where we interact with some remote system
- shutdownShort
everything else shutdown releated (default)
- closing
our closing time (which should be strictly larger than any of the shutdown values)
- inspection
timeout for the storage inspection commands (can run a long long time)
- storageMaxRetryInterval
max retry interval for storage
- verifyActive
how long should we wait for the domain to tell us whether we are active or not
- activeInit
how long a passive replica should wait for the initialization by the active replica
- slowFutureWarn
when using future supervision, when should we start to warn about a slow future
- final case class QueryCostMonitoringConfig(every: NonNegativeFiniteDuration, resetOnOutput: Boolean = true) extends Product with Serializable
Configuration for monitoring the cost of db queries.
Configuration for monitoring the cost of db queries.
- every
determines the duration between reports
- resetOnOutput
determines whether the statistics will be reset after creating a report
- case class ReplicationConfig(enabled: Boolean = false, connectionPool: DbLockedConnectionPoolConfig = DbLockedConnectionPoolConfig()) extends Product with Serializable
Configuration of node replication for high availability
Configuration of node replication for high availability
- enabled
Needs to be set to true for a replicated node, which shares the database with other replicas.
- connectionPool
Configuration for the write connection pool.
- final case class RetentionPeriodDefaults(sequencer: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofDays(7), mediator: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofDays(7), unauthenticatedMembers: NonNegativeFiniteDuration = NonNegativeFiniteDuration.ofHours(1)) extends Product with Serializable
Default retention periods used by pruning commands where no values are explicitly specified.
Default retention periods used by pruning commands where no values are explicitly specified. Although by default the commands will retain enough data to remain operational, however operators may like to retain more than this to facilitate possible disaster recovery scenarios or retain evidence of completed transactions.
- sealed trait SequencerConnectionConfig extends AnyRef
Definition provided by the domain node to members with details on how to connect to the domain sequencer.
Definition provided by the domain node to members with details on how to connect to the domain sequencer. *
- sealed trait ServerAuthRequirementConfig extends AnyRef
Configuration on whether server requires auth, requests auth, or no auth
- trait ServerConfig extends Product with Serializable
Configuration for hosting a server api
- trait StorageConfig extends AnyRef
- case class TestSequencerClientFor(environmentId: String, memberName: String, domainName: String) extends Product with Serializable
- environmentId
ID used to disambiguate tests running in parallel
- memberName
The name of the member that should use a delayed sequencer client
- domainName
The name of the domain for which the member should use a delayed sequencer client
- case class TestingConfigInternal(testSequencerClientFor: Set[TestSequencerClientFor] = Set.empty, useCausalityTracking: Boolean = false) extends Product with Serializable
Used to set parameters for testing when these don't need to be exposed in a config file.
- case class TimeoutDuration(duration: Duration) extends Product with Serializable
Duration class used for timeouts.
Duration class used for timeouts.
There are two options: either it's a non-negative duration or an infinite duration
- final case class TimeoutSettings(console: ConsoleCommandTimeout = ConsoleCommandTimeout(), processing: ProcessingTimeout = ProcessingTimeout()) extends Product with Serializable
Timeout settings configuration
- case class TlsBaseServerConfig(certChainFile: ExistingFile, privateKeyFile: ExistingFile, minimumServerProtocolVersion: Option[String] = Some(
TlsServerConfig.defaultMinimumServerProtocol
), ciphers: Option[Seq[String]] = TlsServerConfig.defaultCiphers) extends BaseTlsArguments with Product with Serializable
A wrapper for TLS server parameters supporting only server side authentication
A wrapper for TLS server parameters supporting only server side authentication
Same parameters as the more complete
TlsServerConfig
- case class TlsClientCertificate(certChainFile: File, privateKeyFile: File) extends Product with Serializable
- case class TlsClientConfig(trustCollectionFile: Option[ExistingFile], clientCert: Option[TlsClientCertificate]) extends Product with Serializable
A wrapper for TLS related client configurations
A wrapper for TLS related client configurations
- trustCollectionFile
a file containing certificates of all nodes the client trusts. If none is specified, defaults to the JVM trust store
- clientCert
the client certificate
- case class TlsServerConfig(certChainFile: ExistingFile, privateKeyFile: ExistingFile, trustCollectionFile: Option[ExistingFile] = None, secretsUrl: Option[String] = None, clientAuth: ServerAuthRequirementConfig = ServerAuthRequirementConfig.Optional, minimumServerProtocolVersion: Option[String] = Some(
TlsServerConfig.defaultMinimumServerProtocol
), ciphers: Option[Seq[String]] = TlsServerConfig.defaultCiphers, enableCertRevocationChecking: Boolean = false) extends BaseTlsArguments with Product with Serializable
A wrapper for TLS related server parameters supporting mutual authentication.
A wrapper for TLS related server parameters supporting mutual authentication.
Certificates and keys must be provided in the PEM format. It is recommended to create them with OpenSSL. Other formats (such as GPG) may also work, but have not been tested.
- certChainFile
a file containing a certificate chain, containing the certificate chain from the server to the root CA. The certificate chain is used to authenticate the server. The order of certificates in the chain matters, i.e., it must start with the server certificate and end with the root certificate.
- privateKeyFile
a file containing the server's private key. The key must not use a password.
- trustCollectionFile
a file containing certificates of all nodes the server trusts. Used for client authentication. It depends on the enclosing configuration whether client authentication is mandatory, optional or unsupported. If client authentication is enabled and this parameter is absent, the certificates in the JVM trust store will be used instead.
- secretsUrl
URL of a secrets service that provide parameters needed to decrypt the private key. Required when private key is encrypted (indicated by '.enc' filename suffix).
- clientAuth
indicates whether server requires, requests, does does not request auth from clients. Normally the ledger api server requires client auth under TLS, but using this setting this requirement can be loosened. See https://github.com/digital-asset/daml/commit/edd73384c427d9afe63bae9d03baa2a26f7b7f54
- minimumServerProtocolVersion
minimum supported TLS protocol. Set None (or null in config file) to default to JVM settings.
- ciphers
supported ciphers. Set to None (or null in config file) to default to JVM settings.
- enableCertRevocationChecking
whether to enable certificate revocation checking per https://tersesystems.com/blog/2014/03/22/fixing-certificate-revocation/ TODO(#4881): implement cert-revocation at the participant and domain admin endpoints Ledger api server reference PR: https://github.com/digital-asset/daml/pull/7965
- case class VegasLimit(maxConcurrency: Option[Int], smoothing: Option[Double]) extends LimitConfig with Product with Serializable
Uses an algorithm inspired by TCP-Vegas to estimate ideal limit.
Uses an algorithm inspired by TCP-Vegas to estimate ideal limit.
- case class WindowedLimit(windowSize: Option[Int] = None, delegate: LimitConfig) extends ConcurrencyLimitConfig with Product with Serializable
Use a
deligate
concurrency limiter, supplying it data averaged over windows of at leastwindowSize
Use a
deligate
concurrency limiter, supplying it data averaged over windows of at leastwindowSize
Value Members
- object AdminServerConfig extends Serializable
- object ApiLoggingConfig extends Serializable
- object ApiType
- object BatchAggregatorConfig extends Serializable
- object CachingConfigs extends Serializable
- object CantonCommunityConfig extends Serializable
- Annotations
- @nowarn()
- object CantonConfig
- Annotations
- @nowarn()
- object CantonConfigUtil
- object CantonEnterpriseConfig extends Serializable
- Annotations
- @nowarn() @nowarn()
- object CheckConfig
- object ClockConfig extends Serializable
- object CommunityConfigValidations extends ConfigValidations[CantonCommunityConfig] with NamedLogging
- object CommunityDbConfig
- object CommunityStorageConfig
- object ConcurrencyLimitConfig
- object ConfigDefaults
- object ConfigErrors extends ConfigErrorGroup
* Trait which acts as a wrapper around
* Trait which acts as a wrapper around
lightbend ConfigException
s which are caught when attempting to read or parse a configuration file 2.pureconfig ConfigReaderFailures
which are returned when attempting to convert a given com.typesafe.config.Config instance (basically a valid HOCON-file) to one of the Canton configs
- object ConsoleCommandTimeout extends Serializable
- object CryptoProvider
- object DbCacheConfig extends Serializable
- object DbConfig extends NoTracing
- object DefaultProcessingTimeouts
Reasonable default timeouts
- object EnterpriseConfigValidations extends ConfigValidations[CantonEnterpriseConfig]
- object EnterpriseDbConfig
- object EnterpriseStorageConfig
- object Generate
- object Password extends Serializable
- object RequireTypes
Encapsulates those classes and their utility methods which enforce a given invariant via the use of require.
- object SequencerConnectionConfig
- object ServerAuthRequirementConfig
- object ServerConfig extends Serializable
- object TimeoutDuration extends Serializable
- object TlsServerConfig extends Serializable