Feature flags reference

A catalog of the Snaplex (JCC) node feature flags, grouped by subsystem, with each flag's type, default value, and description as defined in the platform code.

Feature flags tune the behavior of Snaplex (JCC) nodes. Each flag is identified by its fully qualified name (<class>.<field>) and has a type and a default value. Most flags are advanced settings that are not changed during normal operation.

Important: This reference lists flags defined in the platform code. Availability of a given flag depends on your Snaplex version. Changing a flag can affect node stability and performance.
Important: Adding, updating, or removing a flag override requires Environment (Org) admin permissions. For instructions, see Manage feature flags.

Metrics and telemetry

Feature flag Type Default Description
com.snaplogic.cc.metrics.CrashEventPusher.AUTO_UPLOAD boolean false Enables automatically uploading the support package when the node crashes.
com.snaplogic.cc.metrics.CrashEventPusher.WAIT_DURATION long 300000 Controls the wait duration for generating the node crash file. Constraints: minValue=1.
com.snaplogic.cc.metrics.FeedStatsHandler.CONSUMER_TIMEOUT int 1000 Changes the amount of time, in milliseconds, to wait when fetching broker stats.
com.snaplogic.cc.metrics.MetricsConfiguration.PROMETHEUS_EXPOSED boolean true Enables exposing metrics through the /prometheus endpoint.
com.snaplogic.cc.metrics.MetricsLogger.ALLOWED_LIST_OF_METRICS Set<String> empty Limits which metrics are sent to the system log to those in the allowed list.
com.snaplogic.cc.metrics.MetricsLogger.SEND_TO_SYSTEMLOG boolean false Enables output to SystemLog. Default: false.
com.snaplogic.cc.metrics.MetricsLogger.SHOULD_LOG boolean false Enables output to the log. Default: false.
com.snaplogic.cc.metrics.MetricsPusher.ALLOWED_LIST_OF_METRICS Set<String> (curated plexnode.* metric list) Limits which metrics are pushed to those in the allowed list. If empty, all metrics are allowed.
com.snaplogic.cc.metrics.MetricsPusher.ALLOWED_LIST_OF_PIPELINE_METRICS Set<String> empty Limits which metrics are pushed to those in the allowed list. If empty, no metrics are pushed.
com.snaplogic.cc.metrics.MetricsPusher.PUSH_INTERVAL int 60 Changes the interval for pushing metrics to the telemetry endpoint, in seconds. Set to 0 to disable pushing metrics. Default: 60. Constraints: minValue=0.
com.snaplogic.cc.metrics.MetricsPusher.USE_DELIVERY_SERVICE boolean true Controls whether the Delivery service is used to push the data to CP.
com.snaplogic.cc.metrics.PipelineLifecycleMetrics.DETAILED_ENABLED Boolean false Enables detailed metrics with high-cardinality tags, for example ruuid. Default: off.
com.snaplogic.cc.metrics.PipelineLifecycleMetrics.EXPIRATION_DELAY_MS Long 48 hours (ms) Changes the expiration timeout for pipeline lifecycle metrics, in milliseconds. Default: 48 hours.
com.snaplogic.cc.metrics.PipelineLifecycleMetrics.LIFECYCLE_ENABLED Boolean false Enables pipeline lifecycle metrics. Default: off.
com.snaplogic.cc.metrics.ScheduledTaskMetrics.ENABLED Boolean true Enables Scheduled Task business metrics collection.
com.snaplogic.cc.metrics.SnapSurveyor.CUT_OFF_DELAY int 60000 Controls the elapsed time before metrics publishing starts. Default: 60000.
com.snaplogic.cc.metrics.SnapSurveyor.ENABLED boolean false Enables surveying and general metric collection at the Snap level. Default: false.
com.snaplogic.cc.metrics.TaskAndPipelineMetrics.EXPIRATION_DELAY_MS long 2 minutes (ms) Changes the expiration timeout for some metrics, in milliseconds. Default: 2 minutes.
com.snaplogic.cc.metrics.opentelemetry.OpenTelemetryDropwizardMetricsAdapter.OTEL_ALLOWED_LIST_OF_METRICS Set<String> (curated plexnode.* metric list) Limits which metrics are pushed through OpenTelemetry to those in the allowed list. If empty, all metrics are allowed.
com.snaplogic.metrics.MetricsReplicator.ENABLED boolean true Enables metrics replication. Default: true.
com.snaplogic.snapi.opentelemetry.OTelTracingFacadeImpl.OTEL_TRACING boolean false Enables OpenTelemetry tracing. Default: off.
com.snaplogic.snapi.telemetry.TelemetryFacadeImpl.CHUNK_COUNT_THRESHOLD int 50 Limits the number of chunks that can be stored before older chunks are discarded. Constraints: minValue=2.
com.snaplogic.snapi.telemetry.TelemetryFacadeImpl.CHUNK_SIZE_THRESHOLD int ~10 MB Limits the data byte size that should be sent per chunk; at least one metricBucket is sent each time. Constraints: minValue=1.

Pipeline execution

Feature flag Type Default Description
com.snaplogic.cc.pipeline.PipelineManager.CACHE_ACCOUNTS_DURING_RUNTIME boolean true Enables caching of accounts during pipeline runtime.
com.snaplogic.cc.pipeline.PipelineManager.CACHE_PIPELINE_RUNTIME String NONE Controls the pipeline caching type used.
com.snaplogic.cc.pipeline.PipelineManager.CHECK_PARAM_SIZE boolean true Enables checking of the size of pipeline parameters.
com.snaplogic.cc.pipeline.PipelineManager.ENABLE_DELAY_NOTIFICATIONS boolean false Enables notifications when a pipeline execution is delayed.
com.snaplogic.cc.pipeline.PipelineManager.FLUSH_PREVIEW boolean true Enables periodic flushing of preview files.
com.snaplogic.cc.pipeline.PipelineManager.FORCE_EXEC_ON_NEIGHBOR boolean false Changes plex-local executions to run on neighbor nodes instead of locally.
com.snaplogic.cc.pipeline.PipelineManager.LEGACY_PLEX_EXECUTE_FAILOVER boolean false Enables failover to the next node when plexExecute fails in the legacy load-balancing path.
com.snaplogic.cc.pipeline.PipelineManager.LOCAL_SLOT_THRESHOLD int 40 Changes the threshold for preferring a local execution over a neighbor.
com.snaplogic.cc.pipeline.PipelineManager.MAX_CHILD_DEPTH long 64 Limits the maximum depth of child pipelines allowed.
com.snaplogic.cc.pipeline.PipelineManager.MAX_PARAM_SIZE int 8 MB Limits the maximum size of pipeline parameters.
com.snaplogic.cc.pipeline.PipelineManager.SLOW_START_DELAY long 1 second (ms) Changes the amount of time to delay while waiting for the first child to finish.
com.snaplogic.cc.pipeline.PipelineManager.TIMEOUT_MONITOR_ENABLED boolean true Enables the pipeline timeout monitor.
com.snaplogic.cc.pipeline.PipelineManager.UPDATE_NEIGHBOR_STATS boolean true Enables updating neighbor stats from other sources.
com.snaplogic.cc.pipeline.PipelineManager.USE_DIST_STRATEGY boolean true Enables an adjustable distribution strategy for child executions.
com.snaplogic.cc.pipeline.PipelineManager.USE_NEW_LOAD_BALANCING boolean false Enables the new load-balancing algorithm.
com.snaplogic.cc.pipeline.PipelineManager.USE_PARENT_SLFS_CONTEXT boolean false Changes child executions to use the parent SLFS context instead of their own.

Scheduler and tasks

Feature flag Type Default Description
com.snaplogic.cc.scheduler.ExecutingJob.PREPARE_TIMEOUT long 30 minutes (ms) Changes the timeout for preparing the pipeline executed by the job, in milliseconds. Default: 30 minutes.
com.snaplogic.cc.scheduler.ExecutingJob.RETRY_DELAY long 2 seconds (ms) Changes the retry delay when prepare fails on timeout, in milliseconds. Default: 2 seconds.
com.snaplogic.cc.scheduler.NextFireTimeUpdateListenerImpl.AUTO_FLUSH_DELAY_SEC int 0 Changes the startup delay before the job pushes next run time values to SlSched, in seconds. Default: 0. Constraints: minValue=0.
com.snaplogic.cc.scheduler.NextFireTimeUpdateListenerImpl.AUTO_FLUSH_INTERVAL_SEC int 5 Changes the interval for the job to push out next run time values to SlSched, in seconds. Default: 5. Constraints: minValue=1.
com.snaplogic.cc.service.SchedulerService.ALWAYS_UPSERT boolean true Changes whether jobs are always updated during syncing.
com.snaplogic.cc.service.SchedulerService.BG_LOAD_TIMEOUT_SECS int 1 Changes how long to block while waiting for tasks to load, in seconds. Constraints: minValue=1.
com.snaplogic.cc.service.SchedulerService.CUTOFF_THRESHOLD_MILLIS long 120 minutes (ms) Limits the threshold, in milliseconds, outside of which the job never runs or reports its state.
com.snaplogic.cc.service.SchedulerService.LATEST_TASK_FETCH_PERIOD long 5 (minutes) Changes the rate, in minutes, at which the latest tasks are fetched. Constraints: minValue=1.
com.snaplogic.cc.service.SchedulerService.MISFIRE_THRESHOLD_MILLIS long 15 minutes (ms) Changes the misfire threshold, in milliseconds, that the scheduler uses.
com.snaplogic.cc.service.SchedulerService.MISFIRE_THRESHOLD_MILLIS_1MIN long 30 seconds (ms) Changes the misfire threshold, in milliseconds, that the scheduler uses for tasks with a 1-minute interval.
com.snaplogic.cc.service.SchedulerService.TASK_FETCH_DELAY long 1 (minute) Changes the delay, in minutes, before starting to fetch tasks. Constraints: minValue=1.
com.snaplogic.cc.service.SchedulerService.TASK_FETCH_PERIOD long 240 (minutes) Changes the rate, in minutes, at which all tasks are fetched. Constraints: minValue=1.
com.snaplogic.cc.service.scheduled.ScheduledTaskConfiguration.DEQUEUE_MAX Int 300 Limits the number of tasks allowed to prepare at the same time. Default: 300. Decreasing the value doesn't affect already running tasks.
com.snaplogic.cc.service.scheduled.ScheduledTaskConfiguration.EXECUTOR_INTERVAL Long 20 seconds (ms) Changes the interval for processing tasks and performing overflow checks on the queue, in milliseconds. Default: 20 seconds. Constraints: minValue=0.
com.snaplogic.cc.service.scheduled.ScheduledTaskConfiguration.PREPARE_TIME_THRESHOLD Long 1000 Changes the minimum amount of time before expiration to start the prepare, in milliseconds. Default: 1 second. Constraints: minValue=1.
com.snaplogic.cc.service.scheduled.ScheduledTaskConfiguration.QUEUEING_ENABLED Boolean false Enables scheduled task queuing. Default: false.
com.snaplogic.cc.service.scheduled.ScheduledTaskConfiguration.QUEUE_CAPACITY Int 2000 Limits the total number of tasks that can be on the queue at any given time. Default: 2000. Constraints: minLength=0.

Ultra

Feature flag Type Default Description
com.snaplogic.cc.service.UltraKeeper.ASSESS_FREQUENCY_SECS int 5 Changes how often the assessor runs, in seconds.
com.snaplogic.cc.service.UltraKeeper.ENACT_DELAY_MS long 0 Changes the delay the enact is postponed by when the IS_ULTRA_KEEPER_ENABLED_V2 feature flag is enabled, in milliseconds.
com.snaplogic.cc.service.UltraKeeper.IS_ULTRA_KEEPER_ENABLED_V2 boolean true Enables the Ultra Keeper and disables the Ultra Watchdog. Default: true. Honored by 4.45+ Snaplexes; 4.44 Snaplexes honor IS_ULTRA_KEEPER_ENABLED.
com.snaplogic.cc.service.UltraKeeper.PERIODICALLY_SEND_DURATION long 300 Changes the interval for periodically sending UltraAssessment, in seconds.
com.snaplogic.cc.service.UltraKeeper.SHOULD_ASSESS boolean true Enables the UltraKeeper to perform assessments.
com.snaplogic.cc.service.UltraKeeper.SHOULD_SEND boolean true Enables the UltraKeeper to distribute assessments.
com.snaplogic.cc.snap.adm.AdmUltraLineagePublisher.ULTRA_PUSH_INTERVAL int 0 Changes the interval for pushing ultra lineage to the delivery service, in seconds. Set to 0 to disable pushing lineage. Default: 0. Constraints: minValue=0.
com.snaplogic.cc.ultra.PhaseBasedRebalancer.STABILIZATION_WINDOW_SECS Int 180 Changes the number of seconds the active CC node set must be identical before the rebalancer treats the plex as STABLE instead of STABILIZING. Must exceed the customer autoscaler stabilization window. Default: 180 seconds (3 minutes).
com.snaplogic.cc.ultra.PhaseBasedRebalancer.STABILIZING_BURST_CAP Int 10 Limits the token bucket ceiling while STABILIZING, bounding an unproven-plex tick's blast radius.
com.snaplogic.cc.ultra.PhaseBasedRebalancer.STABILIZING_REFILL_RATE_PER_SEC Double 0.5 Changes the token refill rate while STABILIZING, in discretionary moves per second.
com.snaplogic.cc.ultra.PhaseBasedRebalancer.STABLE_BURST_CAP Int 50 Limits the token bucket ceiling once STABLE. Large but finite so a cold-start tail drains in a handful of ticks while still capping a single tick's fleet-wide pipeline restarts.
com.snaplogic.cc.ultra.PhaseBasedRebalancer.STABLE_REFILL_RATE_PER_SEC Double 1.0 Changes the token refill rate once STABLE, in discretionary moves per second. This is the long-run steady-state restart-rate ceiling.
com.snaplogic.cc.ultra.QueueScaleFormula.ESTIMATED_DOC_NUM_PER_INSTANCE int 200 Changes the estimated number of documents an instance handles, adjusting the sensitivity of scaling instance count. Constraints: minValue=1.
com.snaplogic.cc.ultra.QueueScaleFormula.QUEUE_LENGTH_SAMPLE_SIZE int 0 Changes how much enqueue metric data is used for trend analysis. 0 (default) consumes all data; for example, 4 uses the latest 4 records. Constraints: minValue=0.
com.snaplogic.cc.ultra.ScaleEngine.SCALING_DELAY_TIMEOUT int 60 Changes the timeout for the scaling delay, in seconds.
com.snaplogic.cc.ultra.UltraAssigner.REBALANCING_ALGORITHM RebalancingAlgorithm LEGACY_43 Changes the Ultra rebalancing algorithm. LEGACY_43: original 4.43 hash-rotation (default). PHASE_BASED: two-pass token-bucket phase-driven algorithm.
com.snaplogic.cc.ultra.UltraEnactor.CLOSE_TIMEOUT_MS long 5 minutes (ms) Changes the time, in milliseconds, to wait for an ultra pipeline to gracefully close before escalating to a hard stop.
com.snaplogic.cc.ultra.UltraTupleScheduler.KEEP_ALIVE_TIME Long 60 Changes the idle thread expiration time, in seconds.
com.snaplogic.cc.ultra.UltraTupleScheduler.MAX_POOL_SIZE int 80 Changes the maximum pool size to improve the Ultra Scheduler performance.
com.snaplogic.cc.ultra.UltraTupleScheduler.TASKS_LIMIT int 40 Limits the percentage of the pool size a task can occupy while preparing or closing.

FeedMaster and feeds

Feature flag Type Default Description
com.snaplogic.cc.jaxrs.resource.FeedResource.IGNORE_ORIGINAL_DOC_HEADER boolean true Enables filtering of binary view headers that have the key 'original'. Default: true.
com.snaplogic.cc.jaxrs.resource.FeedResource.INSTANT_REQUEST_TIMEOUT long 1 hour (ms) Changes the default timeout for instant task requests, in milliseconds.
com.snaplogic.cc.jaxrs.resource.FeedResource.PREPARE_TIMEOUT long 30 minutes (ms) Changes the timeout for preparing the pipeline that the job executes, in milliseconds. Default: 30 minutes.
com.snaplogic.cc.jaxrs.resource.FeedResource.RETRY_DELAY long 2 seconds (ms) Changes the retry delay when prepare fails on timeout, in milliseconds. Default: 2 seconds.
com.snaplogic.cc.jstream.message.FeedMasterConnection.ALLOW_EXPIRATION_PERIOD boolean true Enables the CC to reopen the FeedMasterConnection when there are in-flight messages that have all expired.
com.snaplogic.cc.jstream.message.FeedMasterConnection.ALLOW_FORCE_REOPEN boolean false Enables the CC to reopen the FeedMasterConnection even when there are messages in-flight.
com.snaplogic.cc.jstream.message.FeedMasterConnection.LONG_QUIET_PERIOD_SECS AtomicInteger 600 Changes the length of time to wait before reopening a FeedMaster connection that has not received any messages.
com.snaplogic.cc.jstream.message.FeedMasterConnection.MAX_SHORT_QUIET_PERIOD long 15 minutes (ms) Limits the maximum amount of time to wait before forcing a connection to reopen.
com.snaplogic.cc.jstream.message.FeedMasterConnection.SHORT_QUIET_PERIOD_SECS AtomicInteger 60 Changes the length of time to wait after the last message is received before reopening a connection.
com.snaplogic.cc.jstream.view.feed.LLFeedReceiver.ADMISSION_TIMEOUT long 30 seconds (ms) Changes the timeout when waiting for admission.
com.snaplogic.cc.jstream.view.feed.LLFeedReceiver.MEMORY_ADMISSION_CHECK_THRESHOLD long 1 MB Changes the threshold for the size of the request content.
com.snaplogic.cc.jstream.view.feed.LLFeedReceiver.MEMORY_REJECT_DELAY_MS long 5 seconds (ms) Changes the delay between memory admission checks.
com.snaplogic.common.ShouldRestartFeedmaster.ENABLED boolean true Enables restarting FeedMaster when the Broker stops.
com.snaplogic.feedmaster.service.AlwaysOnFeedConnection.ADMISSION_CHECK_STEP long 1 Controls how frequently the admission check runs on requests.
com.snaplogic.feedmaster.service.AlwaysOnFeedConnection.OLD_REQUEST_THRESHOLD long 20 seconds (ms) Changes the age, in seconds, above which a queue is considered backed up and throttled. Constraints: minValue=0.
com.snaplogic.feedmaster.service.AlwaysOnFeedConnection.RATE_LIMIT_ALL_THRESHOLD int 90 Changes the storage usage threshold at which all requests are throttled. Constraints: minValue=1, maxValue=100.
com.snaplogic.feedmaster.service.AlwaysOnFeedConnection.RATE_LIMIT_OLD_THRESHOLD int 70 Changes the storage usage threshold at which queues with old requests are throttled. Constraints: minValue=1, maxValue=100.
com.snaplogic.feedmaster.service.AlwaysOnFeedConnection.SESSION_POOL_MAX int 32 Limits the maximum number of sessions in a pool.
com.snaplogic.feedmaster.service.AlwaysOnFeedConnection.SESSION_POOL_MAX_IDLE int 8 Limits the maximum idle count for the session pool.
com.snaplogic.feedmaster.service.AlwaysOnFeedConnection.SESSION_POOL_MIN_IDLE int 2 Limits the minimum idle count for the session pool.
com.snaplogic.feedmaster.service.AlwaysOnFeedConnection.USE_LEGACY boolean false Changes AlwaysOnFeedConnection to use its legacy implementation.
com.snaplogic.feedmaster.service.BrokerConnection.CLOSE_ONEXCEPTION boolean true Enables closing the connection on exceptions.
com.snaplogic.feedmaster.service.BrokerConnection.MIN_MEMORY_LIMIT long 16 MB Limits the minimum length of an incoming request, in bytes.
com.snaplogic.feedmaster.service.BrokerConnection.USE_ASYNC_SEND boolean false Changes the broker connection to send asynchronously.
com.snaplogic.feedmaster.service.SlSchedQueueMonitor.DO_HEALTHCHECK boolean true Enables closing the connection when the health check fails.

Caching

Feature flag Type Default Description
com.snaplogic.cache.service.CacheService.ALLOWED_CACHE_ASSET_TYPES Set<String> all except CONTAINER Limits the asset types that can be cached, using an allow-list.
com.snaplogic.cache.service.CacheService.BACKGROUND_REFRESH_ENABLED Boolean true Enables background refresh of stale cached assets.
com.snaplogic.cache.service.CacheService.FILE_CHUNK_SIZE Int 64 * 1024 Changes the size of file chunks that are streamed.
com.snaplogic.cache.service.CacheService.MAX_INBOUND_MESSAGE_SIZE Int 16 * 1024 * 1024 Limits the max inbound gRPC message size, in bytes, for CacheService.
com.snaplogic.cache.service.CacheService.REFRESHABLE_ASSETS Set<SnodeType> ACCOUNT, PIPELINE Controls which asset types support refresh on invalidation.
com.snaplogic.cache.service.CacheService.SOFT_REFRESH_DURATION Long 1 Changes how old, in hours, an asset must be before background refresh occurs.
com.snaplogic.cc.cache.AssetCache.ASSET_CACHE_EXPIRATION long 96 hours (in seconds) Changes the asset cache expiration, in seconds.
com.snaplogic.cc.cache.AssetCache.ASSET_CACHE_SIZE String auto Changes the asset cache size. Set to "auto" for automatic calculation.
com.snaplogic.cc.cache.AssetCache.ASSET_SIZE_PER_GB long 250 Changes the asset cache size per GB of RAM when the "auto" setting is used.
com.snaplogic.cc.cache.AssetCache.NEIGHBOR_INVALIDATION_MAX_DELAY_SECS long 30 Limits the max delay, in seconds, between neighbor invalidation retries.
com.snaplogic.cc.cache.AssetCache.NEIGHBOR_INVALIDATION_MAX_RETRIES int 2 Limits the max retries for neighbor invalidation, when retry is enabled.
com.snaplogic.cc.cache.AssetCache.NEIGHBOR_INVALIDATION_RETRY_DELAY_SECS long 5 Changes the initial delay, in seconds, between neighbor invalidation retries.
com.snaplogic.cc.cache.AssetCache.NEIGHBOR_INVALIDATION_RETRY_ENABLED boolean true Enables retry for neighbor invalidation requests.
com.snaplogic.cc.cache.AssetCache.RELINK_POOL_SIZE int 0 Limits the max concurrent task reloads through a dedicated pool. Set to 0 to disable throttling.
com.snaplogic.cc.cache.AssetCache.SKIP_ULTRA_RELOAD_FOR_AUTO_REFRESH boolean true Changes whether ultra reload is skipped for auto-refresh account invalidations.
com.snaplogic.cc.cache.CacheClientProvider.CACHE_INVALIDATION_MAX_RETRIES Int 2 Limits the max retries for CacheService invalidation, when retry is enabled.
com.snaplogic.cc.cache.CacheClientProvider.CACHE_INVALIDATION_RETRY_DELAY_SECS Long 1 Changes the delay, in seconds, between CacheService invalidation retries.
com.snaplogic.cc.cache.CacheClientProvider.CACHE_INVALIDATION_RETRY_ENABLED Boolean true Enables retry for CacheService invalidation requests.
com.snaplogic.cc.cache.CacheClientProvider.CACHE_SERVICE_ENABLED Boolean false Enables the new cache service.
com.snaplogic.cc.cache.CacheClientProvider.REFRESH_ON_INVALIDATION Boolean true Enables refresh on invalidation.
com.snaplogic.cc.cache.CacheClientProvider.STREAM_FILE_TIMEOUT Long 5 minutes (ms) Changes the timeout for streaming files in the cache service.
com.snaplogic.cc.cache.CacheClientProvider.USE_CS_FOR_ACCOUNT_RELOAD Boolean true Changes whether the cache service is used to reload Snap accounts.
com.snaplogic.cc.cache.ResponseCache.MAINTENANCE_INTERVAL_MS long 12 hours (ms) Changes the maintenance interval for the HTTP response cache map, in milliseconds.
com.snaplogic.cc.secrets.SecretsCache.CHANGE_ENCRYPTION_KEY boolean false Enables changing the encryption key for the Secrets Cache.
com.snaplogic.cc.secrets.SecretsCache.SECRET_CACHE_EXPIRATION long 15 minutes (seconds) Changes the Secret Cache expiration, in seconds.
com.snaplogic.cc.service.GuavaPipelineCacheImpl.PIPELINE_CACHE_DOC_LIMIT int 100000 Limits the number of documents stored per cache pipeline.
com.snaplogic.cc.service.PolicyCacheImpl.ABORT_ON_INVALID boolean true Controls whether API requests are aborted when an invalid policy is encountered.

APIM and policies

Feature flag Type Default Description
com.snaplogic.apim.service.RateLimitLocalService.ALLOW_ACQUIRE_ON_FAILURE boolean false Enables a request to continue when there is a problem getting the rate-limit bucket.
com.snaplogic.apim.service.RateLimitLocalService.LOCAL_ONLY boolean false Changes rate-limit lookups to consult only the local master instead of contacting a neighbor.
com.snaplogic.apim.service.RateLimitLocalService.MAX_CACHE_SIZE int 10000 Limits the maximum size of the rate-limit cache.
com.snaplogic.apim.service.RateLimitLocalService.STATS_RECENT_MAX_SIZE long 1000 Limits the maximum number of buckets returned in the stats recent list.
com.snaplogic.apim.service.RateLimitMasterService.EVICTION_PERIOD long 10 Changes the interval between eviction scans.
com.snaplogic.apim.service.RateLimitMasterService.MAX_CACHE_SIZE int 10000 Limits the maximum size of the rate-limit cache.
com.snaplogic.apim.service.RateLimitMasterService.PEAK_ACQUIRE_LOW_THRESHOLD long 10 Changes the low threshold used to decide whether to return extra tokens.
com.snaplogic.apim.service.RateLimitMasterService.PEAK_ACQUIRE_PERCENT long 10 Changes the percentage of peak tokens returned to a local rate-limit service.
com.snaplogic.apim.service.RateLimitMasterService.STATS_RECENT_MAX_SIZE long 1000 Limits the maximum number of buckets returned in the stats recent list.
com.snaplogic.apim.service.TaskSessionService.MAX_CACHE_SIZE int 10000 Limits the maximum size of the session cache.
com.snaplogic.cc.service.PolicyWrapper.MAX_ALERTS int 5 Limits the maximum number of alerts stored for this policy.
com.snaplogic.common.ControlPlaneRetryPolicy.MAX_DELAY long 30 Limits the maximum delay after backing off.
com.snaplogic.common.ControlPlaneRetryPolicy.MAX_RETRIES int 5 Limits the maximum number of retries.
com.snaplogic.common.ControlPlaneRetryPolicy.RETRY_DELAY long 5 Changes the initial delay between retries.
com.snaplogic.common.jaxrs.APIPolicyFeature.DEFAULT_RATE_LIMIT RateLimitPolicy 5000/hour, 100/minute Changes the default rate-limit policy.

HTTP, security, and gateway

Feature flag Type Default Description
com.snaplogic.cc.account.oauth2.OAuth2Client.UTF8_ENCODE boolean true Enables UTF-8 encoding.
com.snaplogic.cc.jaxrs.resource.DocumentStreamingOutput.FORCE_DOC_READ_FAILURE boolean false Enables forcing a failure when reading a document from the view.
com.snaplogic.cc.jaxrs.resource.GatewayConnectResource.ENABLE_GATEWAY_CONNECT boolean true Enables the gateway connection feature.
com.snaplogic.cc.jaxrs.resource.GatewayConnectResource.GATEWAY_CONNECTION_COUNT int 1 Changes the number of websocket connections made to the gateway.
com.snaplogic.cc.jaxrs.resource.GatewayResource.MAX_CACHE_BYTES int 90000000 Limits the maximum quantity of bytes for which HTTP responses may be cached.
com.snaplogic.cc.jaxrs.resource.GatewayResource.MAX_CACHE_ENTRIES int 100 Limits the maximum quantity of entries for cached HTTP responses.
com.snaplogic.cc.jaxrs.resource.McpOAuthDiscoveryResource.ENABLE_MCP_SERVER boolean true Enables the MCP server feature.
com.snaplogic.cc.jaxrs.resource.McpServerResource.ENABLE_MCP_SERVER boolean true Enables the MCP server feature.
com.snaplogic.cc.jaxrs.resource.SnapExceptionMapper.INCLUDE_EXCEPTION_CONTEXT boolean true Enables including exception context in the error response.
com.snaplogic.common.JettyServer.JRUBY_FORK_ENABLED_CLOUD String false Enables the fork option for Cloudplex JRuby.
com.snaplogic.common.JettyServer.JRUBY_FORK_ENABLED_GROUND String true Enables the fork option for Groundplex JRuby.
com.snaplogic.common.JettyServer.JRUBY_NATIVE_ENABLED_CLOUD String false Enables native code for Cloudplex JRuby.
com.snaplogic.common.JettyServer.JRUBY_NATIVE_ENABLED_GROUND String true Enables native code for Groundplex JRuby.
com.snaplogic.common.SnapLogicSecurityManager.ALLOW_CLOUDPLEX_SET_PROPS boolean false Enables setting system properties on Cloudplexes.
com.snaplogic.common.SnapLogicSecurityManager.ALLOW_CONFIG_FOLDER_ACCESS boolean false Enables access to the configuration folder.
com.snaplogic.common.SnapLogicSecurityManager.ALLOW_GROUNDPLEX_PROCESS_CREATION boolean true Enables process creation on Groundplexes.
com.snaplogic.common.SnapLogicSecurityManager.ALLOW_GROUNDPLEX_SET_PROPS boolean true Enables setting system properties on Groundplexes.
com.snaplogic.common.SnapLogicSecurityManager.ALLOW_PROCESS_CREATION_OUTSIDE_SNAP boolean false Enables process creation outside the Snap context.
com.snaplogic.common.SnapLogicSecurityManager.SYS_PROP_PATH_PREFIXES String[] jruby.* Controls which system property path prefixes are disallowed.
com.snaplogic.common.jaxrs.AuthInterceptor.NOAUTH_LONG_TERM_QUOTA RateLimitQuota 5000/hour Limits the long-term quota for unauthenticated requests.
com.snaplogic.common.jaxrs.AuthInterceptor.NOAUTH_PEAK_QUOTA RateLimitQuota 100/minute Limits the peak quota for unauthenticated requests.
com.snaplogic.common.jaxrs.AuthInterceptor.RATE_LIMIT_UNAUTHENTICATED boolean false Enables rate-limiting of unauthenticated requests.
com.snaplogic.common.jaxrs.ClientIPFilter.CLIENT_IP_EXPR Expression (X-Real-IP header match) Changes the expression used to extract the client-IP header.
com.snaplogic.common.jaxrs.JccStateInterceptor.ENABLED boolean true Enables checking JCC state before allowing some requests.
com.snaplogic.common.jaxrs.SecurityHeaderFilter.ENABLE_SECURITY_HEADERS boolean true Enables the default Content-Security-Policy.
com.snaplogic.common.jaxrs.resource.StatusResource.ASYNC_APPSTATS_RATE long 1 minute (ms) Changes the amount of time to wait, in milliseconds, before heartbeat-async polls app stats. Set to 0 to poll on each request.

Node coordination and load balancing

Feature flag Type Default Description
com.snaplogic.cc.NeighborsHolder.AVAILABLE_STATES Set<JCCState> RUNNING, COOLDOWN Changes which node states are considered available when identifying neighbors.
com.snaplogic.cc.NeighborsHolder.EVICT_TIME int 60 Changes the number of seconds since the last update from a neighbor before it is evicted.
com.snaplogic.cc.NeighborsHolder.FD_PADDING int 64 Changes the file descriptor padding value.
com.snaplogic.cc.NeighborsHolder.IGNORE_NETWORK_ADDRESSES Set<String> empty Changes the set of network addresses that are ignored.
com.snaplogic.cc.NeighborsHolder.IGNORE_NETWORK_INTERFACES Set<String> empty Changes the set of network interface names that are ignored.
com.snaplogic.cc.NeighborsHolder.MEM_USED_THRESHOLD int 10 Changes the threshold for memory use to be considered similar across nodes.
com.snaplogic.cc.NeighborsHolder.MISSING_NEIGHBOR_RETRY_DELAY long 30 seconds (ms) Changes the delay between retries to get neighbor contact info.
com.snaplogic.cc.NeighborsHolder.NEIGHBOR_TIMEOUT long 30 minutes (ms) Changes how long to wait for a neighbor to reconnect to the cloud.
com.snaplogic.cc.NeighborsHolder.SLOTS_IN_USE_THRESHOLD int 100 Changes the threshold for slots in use to be considered similar across nodes.
com.snaplogic.cc.execplan.ExecutionPlanning.mode LoadBalancingMode RESOURCE_BASED Changes the load balancing mode: PROFILE_BASED, PROFILE_BASED_DRY_RUN, or RESOURCE_BASED. Default is RESOURCE_BASED.
com.snaplogic.cc.execplan.NodeStateAssessor.ASSESSMENT_ENABLED Boolean false Enables node state assessment. Disabled by default.
com.snaplogic.cc.execplan.NodeStateAssessor.CPU_THRESHOLD_RED Double 85.0 Changes the CPU usage percentage at which a node's state changes to RED.
com.snaplogic.cc.execplan.NodeStateAssessor.CPU_THRESHOLD_YELLOW Double 70.0 Changes the CPU usage percentage at which a node's state changes to YELLOW. Default 70.0.
com.snaplogic.cc.execplan.NodeStateAssessor.DISK_CHECK_ENABLED Boolean true Enables the disk space check in the load balancer.
com.snaplogic.cc.execplan.NodeStateAssessor.DISK_THRESHOLD_RED Long 250 Changes the minimum free disk space, in MB, for RED state.
com.snaplogic.cc.execplan.NodeStateAssessor.DISK_THRESHOLD_YELLOW Long 500 Changes the minimum free disk space, in MB, for YELLOW state.
com.snaplogic.cc.execplan.NodeStateAssessor.HISTORY_LENGTH_GREEN Int 6 Changes the number of data points to include in state calculation. Default: 6 (1 min).
com.snaplogic.cc.execplan.NodeStateAssessor.HISTORY_LENGTH_RETALIATE Int 12 Changes the number of data points to include in state calculation during retaliation. Default: 12 (2 min).
com.snaplogic.cc.execplan.NodeStateAssessor.MEMORY_THRESHOLD_RED Double 85.0 Changes the memory usage percentage at which a node's state changes to RED.
com.snaplogic.cc.execplan.NodeStateAssessor.MEMORY_THRESHOLD_YELLOW Double 70.0 Changes the memory usage percentage at which a node's state changes to YELLOW. Default 70.0.
com.snaplogic.cc.execplan.PipelineProfileDb.debugEnabled Boolean false Enables logging of debug information.
com.snaplogic.cc.execplan.PipelineProfileDb.enabled Boolean false Enables Pipeline Profile calculation. Disabled by default.
com.snaplogic.cc.execplan.PipelineProfileDb.minimumDataPoints Int 6 Changes the minimum data points required to run a profile. Constraints: minValue=1.
com.snaplogic.cc.execplan.PipelineProfileDb.pipelineInactivityThreshold Duration 2 minutes Changes the threshold for detecting finished pipelines.
com.snaplogic.cc.phi.PhiFailureDetector.ENABLED Boolean true Enables the failure detector. When disabled, all historical data is cleared, no new data is collected, and all nodes are unregistered.
com.snaplogic.cc.phi.PhiFailureDetector.THRESHOLD Double 8.0 Changes the Phi Failure Detector threshold for suspicious nodes. Constraints: minValue=0.0.
com.snaplogic.cc.phi.PhiFailureDetector.WINDOW_SIZE Int 1000 Changes the size of the window for calculating the phi value. The detector considers the last 1000 heartbeats. Constraints: minValue=1.
com.snaplogic.cc.service.NeighborApi.NEIGHBOR_CHECK_TIMEOUT int 60 Changes the maximum time, in seconds, to wait for all neighbors to respond when checking for concurrent executions. Constraints: minValue=1.
com.snaplogic.cc.service.NeighborApi.REQUEST_DELAY_MS int 2000 Changes the delay between retries of the neighbor request. Constraints: minValue=1.
com.snaplogic.cc.service.NeighborApi.REQUEST_RETRIES int 2 Changes the maximum number of times to retry a neighbor request. Constraints: minValue=0.
com.snaplogic.cc.service.NeighborApi.STRICT_CHECK boolean false Changes whether the concurrent execution check is handled strictly.
com.snaplogic.cc.service.NeighborApi.THREAD_POOL_SIZE int 3 Limits the number of concurrent requests to neighbors. Constraints: minValue=1, maxValue=100.
com.snaplogic.common.HeartbeatManager.HB_INTERVAL_SECS Long 20 Changes the time between heartbeat requests, in seconds.
com.snaplogic.common.HeartbeatManager.LAST_HB_TIMEOUT_SECS int 60 Changes the time to wait before timing out when sending the last heartbeat, in seconds.
com.snaplogic.common.NeighborHttpClient.REUSE2 boolean true Enables reuse of neighbor connections.
com.snaplogic.common.NeighborHttpClient.SOCKET_TIMEOUT_IN_SEC2 int 5 minutes (seconds) Changes the timeout when reading from neighbors.
com.snaplogic.common.NeighborHttpClient.TCP_CONNECTION_TIME_OUT_IN_SEC2 int 30 Changes the timeout when connecting to neighbors.
com.snaplogic.common.NeighborHttpClientOk.REUSE2 boolean true Enables reuse of neighbor connections.
com.snaplogic.common.NeighborHttpClientOk.SOCKET_TIMEOUT_IN_SEC2 int 5 minutes (seconds) Changes the timeout when reading from neighbors.
com.snaplogic.common.NeighborHttpClientOk.TCP_CONNECTION_TIME_OUT_IN_SEC2 int 30 Changes the timeout when connecting to neighbors.

Control plane reporting and delivery

Feature flag Type Default Description
com.snaplogic.cc.common.DashboardFeature.ENABLED boolean true Enables tracking and reporting of stats for the APIM Dashboard.
com.snaplogic.cc.pipeline.RuntimeInsertionService.RUNTIME_INSERT_LIMIT double 50 Limits the number of pipeline insertions allowed per second.
com.snaplogic.cc.pipeline.RuntimeInsertionService.RUNTIME_INSERT_RETRY_DURATION int 480 (minutes) Changes the duration for pipeline runtime insert retries, in minutes.
com.snaplogic.cc.service.CatalogManager.SHOULD_PREFETCH_PACKS boolean true Enables prefetching of Snap Packs on CC startup.
com.snaplogic.cc.service.DashboardService.MAX_DELAY long 10 Limits the maximum delay after backing off.
com.snaplogic.cc.service.DashboardService.MAX_RETRIES int 1 Limits the maximum number of retries.
com.snaplogic.cc.service.DashboardService.PUSH_TIME_INTERVAL_IN_SEC long 60 Changes the number of seconds to collect stats before pushing the record.
com.snaplogic.cc.service.DashboardService.RETRY_DELAY long 5 Changes the initial delay between retries.
com.snaplogic.cc.service.DeliveryServiceFacadeImpl.CHUNK_COUNT_THRESHOLD Int 50 Limits the number of chunks that can be stored before discarding. Constraints: minValue=2.
com.snaplogic.cc.service.DeliveryServiceFacadeImpl.CHUNK_SIZE_THRESHOLD Int ~1 MB Limits the data byte size sent per chunk (soft limit); at least 1 package is sent regardless of the value. Constraints: minValue=1.
com.snaplogic.cc.service.DeliveryServiceFacadeImpl.DS_MAX_RETRIES Int 5 Limits the number of retries to attempt connection to DeliveryService before downgrading from ALB to F5 behavior (load balancer) if not available. Constraints: minValue=0.
com.snaplogic.cc.service.DeliveryServiceFacadeImpl.DS_SEND_INTERVAL Long 60000 Changes the interval for sending data for the delivery service, in milliseconds. Default: 60 seconds. Set to 0 to disable. Constraints: minValue=0.
com.snaplogic.cc.service.DeliveryServiceFacadeImpl.DS_TIMEOUT Long 300000 Changes the timeout, in milliseconds, before stopping connection attempts to DeliveryService and downgrading from ALB to F5 behavior (load balancer) if unable to connect. Constraints: minValue=0.
com.snaplogic.cc.service.DeliveryServiceFacadeImpl.UPGRADE_ALB_INTERVAL Long 30 minutes (ms) Changes the interval for attempting to upgrade from F5 to ALB behavior (load balancer) when JCC is currently using the F5 load balancer. Constraints: minValue=0.
com.snaplogic.cc.service.NodeStatusService.NODE_ACTIVE_INTERVAL_TIME int 1 Changes the interval for sending node-active status to the delivery service.
com.snaplogic.cc.service.NodeStatusService.NODE_STATE_INTERVAL_TIME int 60 Changes the interval for sending node state to the delivery service.
com.snaplogic.cc.service.PipeRuntimePusher.COMPRESS_REQUESTS boolean false Controls whether HTTP POST requests use gzip Content-Encoding.
com.snaplogic.cc.service.PipeRuntimePusher.GC_THRESHOLD int 100 Changes the number of finished items required before triggering garbage collection.
com.snaplogic.cc.service.PipeRuntimePusher.HISTOGRAM_RESERVOIR_ALPHA double 0.015 Changes the alpha value of the reservoir used for histogram metrics.
com.snaplogic.cc.service.PipeRuntimePusher.HISTOGRAM_RESERVOIR_SIZE int 1024 Changes the size of the reservoir used for histogram metrics.
com.snaplogic.cc.service.PipeRuntimePusher.IS_ASYNC_RUNTIME_INSERTS_ENABLED boolean false Enables the RuntimeInsertionService for runtime inserts. When set to false, runtimes are inserted using the PipeRuntimePusher instead.
com.snaplogic.cc.service.PipeRuntimePusher.MAX_FINISHED_CACHE_SIZE int 10000 Limits the maximum size of the finished execution cache.
com.snaplogic.cc.service.PipeRuntimePusher.MAX_FINISHED_CACHE_TIMEOUT int 9 Limits the maximum number of hours to hold an execution in the cache.
com.snaplogic.cc.service.PipeRuntimePusher.MAX_RUNTIME_COUNT int 1000 Limits the maximum number of runtimes included in a push.
com.snaplogic.cc.service.PipeRuntimePusher.PUSH_CHILD_IMMEDIATELY boolean true Controls whether child items that need to update or upsert to prepare are pushed immediately.
com.snaplogic.cc.service.PipeRuntimePusher.SOCKET_TIMEOUT_IN_SEC int 1 minute (seconds) Changes the timeout for non-suggest runtime inserts and updates.
com.snaplogic.cc.service.PipeRuntimePusher.SUGGEST_RUNTIMES_IN_SEPARATE_THREAD_ENABLED boolean true Controls whether pushes for suggest runtimes run in a separate thread. Expires: 2027-01-31.
com.snaplogic.cc.service.PipeRuntimePusher.VERBOSE_LOGGING boolean false Enables additional logging.
com.snaplogic.cc.service.PipeRuntimePusher.VERBOSE_METRICS boolean false Enables additional metrics, such as histograms and timers.
com.snaplogic.cc.service.SuggestRuntimeService.POLL_DURATION_IN_SECONDS int 1 Changes the duration, in seconds, after which the suggest runtime service polls for active suggest pipelines.
com.snaplogic.cc.service.SuggestRuntimeService.SOCKET_TIMEOUT_IN_SEC int 1 minute (seconds) Changes the timeout for suggest runtime updates.
com.snaplogic.cc.service.UsageMonitorServiceImpl.ALERT_CHECK_PERIOD long 30 Changes the time duration between node alert checks.
com.snaplogic.cc.service.UsageMonitorServiceImpl.HIGH_WATERMARK float 1.04 Changes the highest threshold that usage must reach to clear the alert.
com.snaplogic.cc.service.UsageMonitorServiceImpl.LOW_WATERMARK float 0.4 Changes the lowest threshold that usage must fall to in order to clear the alert.
com.snaplogic.common.dto.StatsCollector.LEADER_WAIT_TIME_MIN int 10 Changes the number of minutes the leader waits for a CC to report data for a window.
com.snaplogic.common.dto.StatsCollector.MINUTES_TO_STORE int 1440 Changes the number of minutes worth of data to hold in case a push is unsuccessful.
com.snaplogic.common.runtime.RuntimeStatus.MAX_THREAD_STATUSES int 15 Limits the maximum number of thread statuses to include.

Networking and node infrastructure

Feature flag Type Default Description
com.snaplogic.common.SupportManager.ALLOW_HEAP_DUMP_UNTIL long 0 Enables a heap dump to be taken.
com.snaplogic.common.SupportManager.LOG_DURATION long 20 minutes (ms) Changes the time period for filtering out logs outside the time frame.
com.snaplogic.common.SupportManager.SUBDIRS Set<String> bin, etc, run Controls which SL_ROOT subdirectories to list.
com.snaplogic.common.SystemManager.MIN_FREE_FDS long 256 Changes the minimum number of file descriptors that must be free for a task request to be admitted. Constraints: minValue=0.
com.snaplogic.common.SystemManager.MIN_FREE_SLOTS int 256 Changes the minimum number of slots that must be free for a task request to be admitted. Constraints: minValue=0.
com.snaplogic.config.ContainerProperties.PROD_VERSIONS List<String> master, main, 4. Controls which version tags represent a production version of the software.
com.snaplogic.snapi.LinkableTaskFacade.HALT_INTERVAL long 12 hours (ms) Changes how long loading tasks are allowed to run, in milliseconds. Default: 12 hours.
com.snaplogic.snapi.LinkableTaskFacade.LIMIT int 1000 Limits the number of tasks fetched from SlSched.
com.snaplogic.snapi.LinkableTaskFacade.WARNING_INTERVAL long 7 minutes (ms) Changes the interval (and half of the initial delay) for logging a warning about loading tasks, in milliseconds. Default: 7 minutes.
com.snaplogic.snapi.util.CachingDns.DEFAULT_NEGATIVE_TTL_MS Long 30000 Changes the default negative TTL, in milliseconds.
com.snaplogic.snapi.util.CachingDns.DEFAULT_TTL_MS Long 300000 Changes the default TTL, in milliseconds.
com.snaplogic.snapi.util.CachingDns.ENABLED Boolean true Enables the DNS cache.
com.snaplogic.util.ProxyConnectionManager.EVICTION_TIMEOUT int 0 Changes the idle eviction timeout, in minutes.
com.snaplogic.util.RetryOnNoResponseHandler.RETRY_EXPIRE_TIME long 3 Changes the request expire time.
com.snaplogic.util.RetryOnNoResponseHandler.RETRY_MULTIPLIER int 1 Changes the retry multiplier.

Snap and view runtime

Feature flag Type Default Description
com.snaplogic.cc.common.MemoryManager.ADVISE boolean true Enables advisory messages.
com.snaplogic.cc.common.MemoryManager.DEFAULT_MEMORY_RESERVATION int 50 MB Changes the default memory reservation for Snaps. Constraints: minValue=1.
com.snaplogic.cc.common.MemoryManager.ENABLED boolean false Enables rate-limiting of views based on memory usage.
com.snaplogic.cc.common.MemoryManager.FLOAT_COEFFICIENT_A double 0.9666675 Changes the A coefficient in the memory float equation.
com.snaplogic.cc.common.MemoryManager.FLOAT_COEFFICIENT_B double 2.91492 Changes the B coefficient in the memory float equation.
com.snaplogic.cc.common.MemoryManager.INITIAL_ITERATION_THRESHOLD int 100 Controls how many of the initial document receives use the memory manager.
com.snaplogic.cc.common.MemoryManager.ITERATION_REDUCER int 10 Changes how often the memory manager runs, every N document receives.
com.snaplogic.cc.common.MemoryManager.MAX_PAUSE_TIME_NS long 30 seconds (ns) Limits the maximum amount of time to pause a view waiting for downstream Snaps to process documents. Constraints: minValue=0.
com.snaplogic.cc.common.MemoryManager.RESERVE_DEADLINE_MS long 30 seconds (ms) Limits the maximum amount of time to wait when trying to reserve memory. Constraints: minValue=0.
com.snaplogic.cc.pipeline.SnapCompletionService.COMPLETE_TIMEOUT long 1 second (ms) Changes the timeout when waiting for an execution to finish completion work and trigger a push.
com.snaplogic.cc.service.JccSnapiService.READ_TIMEOUT_MS_PIPE_FACADE int 900000 Changes the request read timeout that applies only to the pipeline facade.
com.snaplogic.cc.service.JccSnapiService.READ_TIMEOUT_MS_TASK_FACADE int 900000 Changes the request read timeout that applies only to the TaskExecute Snap.
com.snaplogic.cc.service.JccSnapiService.TASK_REQUEST_TIMEOUT_MS int 5 minutes (ms) Changes the request timeout used when constructing the HTTP client used by the TaskManager. Constraints: minValue=10.
com.snaplogic.cc.service.SnaplexLogServiceImpl.DATA_LOG_SIZE_LIMIT_IN_BYTE long 100 MB Limits the size of the stored raw data log on the server, in bytes.
com.snaplogic.cc.service.SnaplexLogServiceImpl.DATA_LOG_TIME_LIMIT_IN_HOUR int 1 day (hours) Limits how long the raw data log is stored on the server, in hours.
com.snaplogic.cc.service.SnaplexLogServiceImpl.ENABLED boolean true Enables collecting the JCC/FM log.
com.snaplogic.cc.service.SnaplexLogServiceImpl.LOG_SIZE_LIMIT_IN_BYTE long 100 MB Limits the size of the stored pending upload log on the server, in bytes.
com.snaplogic.cc.service.SnaplexLogServiceImpl.LOG_TIME_LIMIT_IN_HOUR int 7 days (hours) Limits how long the pending upload log is stored on the server, in hours.
com.snaplogic.cc.service.SnaplexLogServiceImpl.SOCKET_TIMEOUT_IN_SEC int 5 minutes (seconds) Changes the socket timeout for communicating with the control plane.
com.snaplogic.cc.service.SnaplexLogServiceImpl.USE_DELIVERY_SERVICE boolean false Enables sending the data through the Delivery Service.
com.snaplogic.cc.service.StatusSnapshotService.PERIOD2 long 900 (seconds) Changes the number of seconds to wait between snapshot logs. Constraints: minValue=0.
com.snaplogic.cc.snap.api.RelayInputStream.LOCAL_CHUNK_TIMEOUT long 1 minute (ms) Changes how long the stream waits for its neighbor to send data.
com.snaplogic.cc.snap.common.AgentInstaller.ENABLED boolean true Enables installing the instrumentation agent used to trace I/O calls.
com.snaplogic.cc.snap.common.PropertyCryptoImpl.AUTHENTICATED_ENCRYPTION boolean false Changes the default encryption method to use authenticated encryption.
com.snaplogic.cc.snap.common.SnapManagerImpl.INTERRUPTION_TIMEOUT int -1 Changes how long to wait for the Snap execution thread to finish gracefully before stopping it, in milliseconds. Set to a negative value to disable, or 0 to shut down immediately.
com.snaplogic.cc.snap.common.SnapRunnableImpl.EXCLUDE_PACK_LOCATIONS Set<String> empty Limits location tracking by excluding the specified Snap Pack FQIDs.
com.snaplogic.cc.snap.common.SnapRunnableImpl.TRACK_LOCATIONS boolean true Enables tracking of data locations.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.CLOSE_MEMORY_HEAVY_ULTRAS boolean false Enables closing memory-heavy Ultra (always-on) pipelines during memory pressure.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.FORCE_GC_BEFORE_PIPELINE_STOP boolean true Enables forcing a GC call before terminating a pipeline.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.GC_DELAY int 5 Changes the delay, in seconds, before running a GC after terminating a pipeline. Set to -1 to disable.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.LOG_MEMORY_PERCENT int 90 Changes the memory usage percentage at which memory stats logging starts.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.MEMORY_HIGH_WATERMARK_PERCENT int 92 Changes the heap memory usage percentage at which memory management starts. Recommended value: 80 to 99.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.MEMORY_PHYSICAL_COMMITTED_PERCENT int 95 Changes the percentage of committed physical memory (heap and non-heap) at which memory management starts. Recommended value: 90 to 105.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.MEMORY_PHYSICAL_USED_PERCENT int 92 Changes the percentage of used physical memory (heap and non-heap) at which memory management starts. Recommended value: 85 to 99.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.PERIOD long 2 Changes the number of seconds to wait between snapshot logs. Constraints: minValue=0.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.PERIOD_UNITS TimeUnit SECONDS Changes the unit of time for the PERIOD flag.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.PIPELINE_RESTART_DELAY_SECS long 30 Changes the delay between pipeline restarts caused by memory pressure.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.SNAP_CHECK_FILTER_FRACTION int 10 Changes the fraction of total memory a Snap must allocate to be considered for pipeline termination.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.SNAP_RECENT_ALLOC_KB int 100 Changes the recent memory allocation threshold, in KB, checked at the Snap level.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.USE_ASYNC_STOP boolean false Changes pipeline termination to use asyncStop.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.WEIGHT_DOC_COUNT_DIFFFERENCE long 50 Changes the weight applied to Snaps with a document count difference between input and output views.
com.snaplogic.cc.snap.common.SnapThreadStatsPoller.WEIGHT_HIGH_MEMORY_SNAPS long 40 Changes the weight applied to Snaps known to use high memory.
com.snaplogic.cc.snap.common.SnapThreadStatsRecorderImpl.NOT_A_STALL_CLASSES Set<String> (receiver/publisher classes) Excludes the specified class names when checking for a stall.
com.snaplogic.cc.snap.common.SnapThreadStatsRecorderImpl.STALL_RESAMPLE_INTERVAL long 30 seconds (ms) Changes the time between resampling the Snap thread stack to check for progress.
com.snaplogic.cc.snap.common.SocketClassTransformer.IS_FAULTY Optional<Boolean> empty Enables faulty I/O streams.
com.snaplogic.cc.snap.common.TracingFeature.ENSURE_FAILSAFE Optional<Boolean> empty Enables wrapping I/O in a Failsafe call.
com.snaplogic.cc.snap.common.ViewFactory.CAPTURE_ERROR_DOCS boolean false Enables capturing error documents.
com.snaplogic.cc.snap.common.ViewImpl.INITIALIZE_WITH_CACHED_SCHEMA boolean true Enables initializing the view with the previously cached schema.
com.snaplogic.cc.snap.common.ViewImpl.RETURN_CACHED_SCHEMA boolean true Enables returning the cached schema until the Snap has done something.
com.snaplogic.cc.snap.suggest.SuggestProperties.EXPIRATION_TIMEOUT long 2 days (ms) Changes the maximum amount of time to keep the suggest data, in milliseconds. Default: 2 days. Set to 0 to disable.
com.snaplogic.cc.snap.suggest.SuggestProperties.USE_PLEXFS boolean true Changes preview data storage to use PlexFS.
com.snaplogic.cc.snap.view.binary.BinaryOutputViewImpl.USE_SPILLABLE boolean true Changes whether OS pipes or spillable pipes are used.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.MAX_BUFFER_CAPACITY int 64 KB Limits the maximum capacity of a spillable pipe's internal buffers. Constraints: minValue=1.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.MAX_MEMORY_SIZE int 1 MB Limits the maximum amount of memory a spillable pipe can consume. Constraints: minValue=1.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.MIN_BUFFER_CAPACITY int 8 KB Limits the minimum capacity of a spillable pipe's internal buffers. Constraints: minValue=1.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.SPILL_DELAY int 1 Changes the amount of time the reader delays the writer before triggering a spill to disk. Constraints: minValue=1.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.SPILL_DELAY_TIME_UNIT TimeUnit MINUTES Changes the time unit for the SPILL_DELAY setting.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.SPILL_MAX_SIZE long 20 GB Limits the maximum amount of disk space a spill file can use. Constraints: minValue=1.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.SPILL_MAX_TIME int 15 Limits the maximum amount of time available to spill to disk.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.SPILL_MAX_TIME_UNIT TimeUnit MINUTES Changes the time unit for the SPILL_MAX_TIME setting.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.SPILL_MIN_USABLE_SPACE long 1 GB Changes the minimum amount of usable disk space that must be left available. Constraints: minValue=1.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.SPILL_RETRY_DELAY int 5 Changes the amount of time to wait before checking for more disk space. Constraints: minValue=1.
com.snaplogic.cc.snap.view.binary.SpillConfigBuilder.SPILL_RETRY_UNIT TimeUnit SECONDS Changes the time unit for the SPILL_RETRY_DELAY setting.
com.snaplogic.cc.snap.view.document.DocumentOutputViewImpl.FLUSH_DELAY long 3 seconds (ms) Changes the number of milliseconds to wait before flushing the current preview documents.
com.snaplogic.cc.snap.view.document.DocumentPreviewGenerator.MAX_BYTES_PER_FILE long 6 MB Limits the maximum number of bytes per preview file.
com.snaplogic.snap.api.ErrorViewsImpl.MAX_STACK_TRACES long 15 Limits the maximum number of unique stack traces to track.
com.snaplogic.snap.api.ErrorViewsImpl.MAX_TRACES_TO_REPORT long 10 Limits the maximum number of unique stack traces to report.
com.snaplogic.snap.api.capabilities.StandardContexts.VERBOSE boolean false Enables returning verbose response headers.
com.snaplogic.snap.api.impl.DocumentUtilityImpl.CHECK_SHARED_ORIG boolean true Enables checking for shared $original objects.
com.snaplogic.snap.threadpool.SnapThreadStats.STALL_CPU_TOLERANCE long 1 ms (ns) Changes the amount of CPU time that can be consumed and still be considered a stall.
com.snaplogic.snap.threadpool.SnapThreadStats.STALL_THRESHOLD long 1 minute (ms) Changes the time threshold, in milliseconds, for when a thread is considered stalled.
com.snaplogic.snaps.sap.JCoNativeShim.JCO_NATIVE_PRELOAD boolean false Enables syncing the SAP JCo native library from the Snap Pack to the file system if needed. Also requires com.snaplogic.common.SnapLogicSecurityManager.ALLOW_CONFIG_FOLDER_ACCESS to be true.
com.snaplogic.util.SnapObjectMapper.COLON_IN_TIMEZONE boolean false Changes the date format to include a colon in the timezone offset, for ISO 8601 compliance.

Expression engine

Feature flag Type Default Description
com.snaplogic.common.expression.UriInfoVariableAdapter.PATH_INFO_EXPR Expression (path segment extraction) Changes the expression used to extract pathSegments into pathInfo.
com.snaplogic.expression.CompileOptionsBuilder.INLINE_EQUALITY boolean true Enables inlining of constant equality comparisons.
com.snaplogic.expression.CompileOptionsBuilder.INLINE_RELATIONAL boolean true Enables inlining of constant relational comparisons.
com.snaplogic.expression.CompileOptionsBuilder.INLINE_STRING_CONCAT boolean true Enables inlining of constant string concatenation operations.
com.snaplogic.expression.CompileOptionsBuilder.REUSE_SUB_EXPRESSIONS boolean true Enables reuse of results from identical sub-expressions.
com.snaplogic.expression.CompileOptionsBuilder.STATIC_ARGS boolean true Enables using static values for constant function arguments.
com.snaplogic.expression.CompileOptionsBuilder.STATIC_OBJ_LITERAL boolean true Enables using static values for object literals.
com.snaplogic.expression.CompileOptionsBuilder.STATIC_TARGET boolean true Enables using static values for constant method targets.
com.snaplogic.expression.ExpressionUtil.ENABLE_CACHE boolean true Enables caching of compile(String) results.
com.snaplogic.expression.GlobalScope.TRUNCATE_FLOAT boolean true Changes how parseFloat() truncates float values so they are truncated properly, for example, parseFloat(1.240000) outputs 1.24.
com.snaplogic.expression.JaninoStringGeneratorVisitor.TAG_CONSTANT_EXPRESSIONS boolean true Enables tagging of constant expressions.
com.snaplogic.expression.classes.Date.DATE_PARSE_TS_UTC boolean false Changes Date.parse(epoch) to interpret dates in UTC.
com.snaplogic.expression.classes.Date.INCOMPATIBLE_REGEX String [YWFuzXZ] Changes which date formats are excluded from Joda parsing, specified as a regex.
com.snaplogic.expression.classes.Date.NUMBER_FORMAT boolean true Changes date parsing to convert a Number argument to String when a parse format is also given.
com.snaplogic.expression.classes.Date.RETURN_NAN boolean true Changes old error handling to return NaN instead of null.
com.snaplogic.expression.classes.MathClass.PREVENT_NEGATIVE_EXPONENT_OVERFLOW boolean true Prevents negative exponents from being handled by BigDecimal's pow(), to avoid overflow.
com.snaplogic.expression.methods.array.IndexOf.ZERO_SCALE_TO_BIGINTEGER boolean false Changes IndexOf to convert zero-scale BigDecimal values to BigInteger.
com.snaplogic.expression.methods.date.DateMethod.FAIL_ON_INVALID_TIMEZONE boolean false Changes toLocaleDateTimeString() to fail when given an invalid timezone.
com.snaplogic.expression.methods.string.ReplaceAll.ADDITIONAL_ESCAPE boolean false Changes ReplaceAll to require additional escaping for characters.
com.snaplogic.util.ExpressionUtils.EVALUATE_CONSTANT_EXPRS boolean true Enables immediate evaluation of constant expressions.
com.snaplogic.util.ExpressionUtils.INITIAL_SAMPLE_THRESHOLD long 100 Controls the number of expression evaluations sampled before switching to periodic sampling, up to this threshold.
com.snaplogic.util.ExpressionUtils.SAMPLE_EVERY long 100 Changes the sampling frequency after the initial threshold to every N evaluations.
com.snaplogic.util.ExpressionUtils.WARN boolean true Enables expression warnings during Dynamic validation.

Data format and validation

Feature flag Type Default Description
com.snaplogic.data.format.BaseObjectMapper.COLON_IN_TIMEZONE boolean false Changes the date format to include a colon in the timezone offset, for ISO 8601 compliance.
com.snaplogic.document.lineage.SimpleLineageEntry.ENFORCE boolean false Enables enforcement of proper lineage usage.
com.snaplogic.document.provider.WriteObjectMapper.COLON_IN_TIMEZONE boolean false Changes the date format to include a colon in the timezone offset, for ISO 8601 compliance.
com.snaplogic.schema.validator2.ValidatorUtils.CHECK_CONSTANTS boolean true Enables checking the value of constant expressions during validation.
com.snaplogic.schema.validator2.ValidatorUtils.CHECK_SYNTAX boolean true Enables checking expression and JSON-Path syntax during validation.
com.snaplogic.snapi.task.facade.LinkedTaskImpl.MAX_PROPERTY_LENGTH int 1000 Limits the maximum length of a request property added to the runtime.
com.snaplogic.utils.APIMClientCertificateValidator.ALLOWED_SNAPLEX_FOR_MTLS Set<String> empty Controls which snaplex(es) have Client Certificate Authentication turned on.

Logging

Feature flag Type Default Description
com.snaplogic.cc.common.ApiLogFeature.ENABLED_LOG_ON_ERROR boolean false Enables adding a message to the API log when the request status is an error.
com.snaplogic.cc.common.ApiLogFeature.ENABLED_LOG_ON_SUCCESS boolean false Enables adding a message to the API log when the request status is successful.
com.snaplogic.cc.common.ApiLogFeature.MAXIMUM_LOG_LENGTH int 2048 Limits the maximum log size stored in Clickhouse.
com.snaplogic.cc.log.ConnectivityLogger.CLEAN_UP_DELAY long 360 Changes the delay, in seconds, before cleanup starts. Constraints: minValue=1.
com.snaplogic.cc.log.ConnectivityLogger.CLEAN_UP_PERIOD long 360 Changes the rate, in seconds, at which cleanup starts. Constraints: minValue=1.
com.snaplogic.cc.log.ConnectivityLogger.CONNECTIVITYLOGGER_DURATION_CHECK_THRESHOLD long 5000 Changes the duration threshold in ConnectivityLogger used to determine whether to log the message.
com.snaplogic.cc.log.ConnectivityLogger.ERROR_LOG_COUNT_THRESHOLD int 1 Limits the number of times the same warn or error message is logged, to avoid spamming the log when retries happen.
com.snaplogic.cc.log.ConnectivityLogger.OUTDATED_THRESHOLD long 30 Changes the rate, in minutes, at which records are checked for being outdated. Constraints: minValue=1.
com.snaplogic.cc.log.SystemLogger.LOG_LEVEL String OFF Changes the logging level of the System Logger: OFF, DEBUG, INFO, WARN, ERROR. Default: OFF.
com.snaplogic.cc.pipeline.PipelineExecutionLog.TRACING_ENABLED Boolean false Enables pipeline execution tracing. Default: false.
com.snaplogic.snapi.SystemLogFacadeImpl.FLUSH_INTERVAL_MS int 5000 Changes the amount of time between log message flushes. Constraints: minValue=1.
com.snaplogic.snapi.SystemLogFacadeImpl.FLUSH_THRESHOLD int 50 Limits the maximum number of log messages sent at once. Constraints: minValue=1.
com.snaplogic.snapi.SystemLogFacadeImpl.METRICS_FLUSH_THRESHOLD int 100 Limits the maximum number of metrics sent at once. Constraints: minValue=1.

Secrets and encryption

Feature flag Type Default Description
com.snaplogic.cc.service.SecretService.IS_VAULT_SERVICE_ENABLED boolean true Enables the vault service.
com.snaplogic.cc.service.SecretService.PRINT_STATUS boolean false Enables logging of the vault status each time a scope is built, to help with debugging.
com.snaplogic.cc.service.SecretService.REFRESH_FREQUENCY_SECS int 3600 Changes how often the token refresh runs, in seconds.
com.snaplogic.cc.service.SecretService.SECRET_CACHE_ENABLE boolean false Enables the secrets cache.

Storage and streaming

Feature flag Type Default Description
com.snaplogic.cc.service.PlexFsReplicationService.INITIAL_DELAY long 1 Changes the initial delay before doing a replication.
com.snaplogic.cc.service.PlexFsReplicationService.INTERVAL long 10 Changes the polling interval, in minutes, for doing replications.
com.snaplogic.cc.service.PlexFsService.MAX_CLEANUP_DELETE int 1000 Limits the maximum number of files to delete during cleanup.
com.snaplogic.cc.sldb.SldbConnector.LOAD_PLUGINS boolean true Enables loading of WAR plugins.
com.snaplogic.cc.sldb.SldbConnector.UPDATE_MEMBERS_PERIOD long 5 minutes (ms) Changes the interval between requests for updates to the members DB.
com.snaplogic.common.url.protocol.plexfs.PlexFsUrlConnection.FIRST_READ_WAIT_TIME long 30 Changes the time to wait for a PlexFS PUT request to start.
com.snaplogic.common.url.protocol.plexfs.PlexFsUrlConnection.PIPE_SIZE int 32 KB Changes the size of the pipe used for uploading files to PlexFS.
com.snaplogic.common.url.protocol.sldb.SldbOutputStream.ENABLE_S3_KMS boolean false Enables KMS encryption on S3.
com.snaplogic.common.url.protocol.sldb.SldbOutputStream.MAX_PREVIEW_BYTES long 500 MB Limits the maximum number of bytes written to preview data. Constraints: minValue=104857600, maxValue=1048576000.
com.snaplogic.common.url.protocol.sldb.SldbOutputStream.MEM_THRESHOLD int 5 MB Changes the threshold for storing data in memory before spilling to disk.

Other

Feature flag Type Default Description
com.snaplogic.cc.jstream.message.LLMessageManager.EXPECT_JSON_INPUT boolean false Changes how input is interpreted, treating all input as JSON.
com.snaplogic.cc.jstream.message.LLMessageManager.MESSAGE_HISTORY_SIZE int 100 Limits the number of recent messages kept.
com.snaplogic.cc.jstream.view.LocalReceiver.CHECK_SPILL_NEEDED boolean true Enables checking whether spilling is needed.
com.snaplogic.cc.jstream.view.publisher.AbstractPublisher.BINARY_RING_BUFFER_SIZE int 128 Changes the size of ring buffers for binary views. Constraints: minValue=16.
com.snaplogic.cc.jstream.view.publisher.AbstractPublisher.DOC_RING_BUFFER_SIZE int 1024 Changes the size of ring buffers for document views. Constraints: minValue=16.
com.snaplogic.cc.jstream.view.publisher.AbstractPublisher.DOC_SPILL_ENABLED boolean false Enables spilling documents when stalled.
com.snaplogic.cc.jstream.view.publisher.AbstractPublisher.DOC_SPILL_TIME_MS2 long 3 seconds (ms) Changes the threshold before spilling documents to disk. Constraints: minValue=0.
com.snaplogic.cc.pipeline.wire.PipeInfoResponseSerializer.RESPONSE_THRESHOLD_BYTES int 1048576 Limits the maximum response size, in bytes, for the snap statistic.