25.1. Environment Variables exposed in ArmoniK.Core
25.1.1. Options for AdapterSettings
AdapterSettings__AdapterAbsolutePath: string (default:
"")Absolute file system path of the adapter’s plugin assembly in the container
AdapterSettings__ClassName: string (default:
"")Fully qualified name of the adapter class that implements the
ArmoniK.Core.Base.IDependencyInjectionBuildableinterface
25.1.2. Options for Components
Components__TableStorage: string? (default:
null)Represents which database is used for tasks metadata
Components__QueueAdaptorSettings__AdapterAbsolutePath: string (default:
"")Absolute file system path of the adapter’s plugin assembly in the container
Components__QueueAdaptorSettings__ClassName: string (default:
"")Fully qualified name of the adapter class that implements the
ArmoniK.Core.Base.IDependencyInjectionBuildableinterfaceComponents__ObjectStorageAdaptorSettings__AdapterAbsolutePath: string (default:
"")Absolute file system path of the adapter’s plugin assembly in the container
Components__ObjectStorageAdaptorSettings__ClassName: string (default:
"")Fully qualified name of the adapter class that implements the
ArmoniK.Core.Base.IDependencyInjectionBuildableinterfaceComponents__AuthenticationStorage: string? (default:
null)Represents which database is used for authentication
25.1.3. Options for InitServices
InitServices__Authentication: Authentication (default:
())Authentication configurations
InitServices__Partitioning: Partitioning (default:
())Partitioning configurations
InitServices__InitDatabase: bool (default:
true)Whether to perform database initialization (collection creation, indexing, sharding, data insertion, etc…).
InitServices__InitObjectStorage: bool (default:
true)Whether to perform object storage initialization
InitServices__InitQueue: bool (default:
true)Whether to perform queue initialization
InitServices__StopAfterInit: bool (default:
false)Stop the service after performing initialization
25.1.4. Options for InitWorker
InitWorker__WorkerCheckRetries: int (default:
10)Number of times the worker should retry a failed check before giving up.
InitWorker__WorkerCheckDelay: TimeSpan (default:
TimeSpan.FromSeconds(2))Delay duration between each retry attempt.
InitWorker__WorkerCheckTimeout: TimeSpan (default:
TimeSpan.FromSeconds(5))Maximum time to wait for a worker health check RPC to complete. A short deadline ensures a lost gRPC connection is detected quickly instead of hanging until the OS TCP stack times out.
25.1.5. Options for Pollster
Pollster__GraceDelay: TimeSpan (default:
TimeSpan.FromSeconds(5))Grace delay before the pollster cancels the task and put the message back into the queue
Pollster__ShutdownTimeout: TimeSpan (default:
TimeSpan.FromDays(1))Timeout passed to IHost.StopAsync that will shutdown the application
Pollster__MaxErrorAllowed: int (default:
5)Maximum number of consecutive errors allowed in the pollster before it crashes Negative values disable the check
Pollster__TimeoutBeforeNextAcquisition: TimeSpan (default:
TimeSpan.FromSeconds(10))Timeout before releasing the current acquired task and acquiring a new one This happens in parallel of the execution of another task
Pollster__NbAcquisitionRetry: int (default:
3)Number of acquisitions to try during the processing of a previous task. If the processing task is still running after that many acquisitions, the Agent will stop acquiring tasks until the processing task has finished.
Pollster__PendingRetryDelay: TimeSpan (default:
TimeSpan.FromMilliseconds(100))Delay between consecutive re-reads of a task that is still in Pending status during acquisition, to allow the submitter time to complete the transition to Submitted.
Pollster__NbPendingRetry: int (default:
3)Number of times to re-read a Pending task before postponing the message. Covers the window between the queue push and the status update to Submitted that occurs during task submission.
Pollster__SharedCacheFolder: string (default:
"/cache/shared")Root directory for per-task staging folders. Sub-directories are created here for each task and deleted after it completes
Pollster__InternalCacheFolder: string (default:
"/cache/internal")Persistent cache directory. Files are keyed by ResultId. Can be shared across multiple agent processes on the same node.
Pollster__PartitionId: string (default:
"")Identifier of the queue partition
Pollster__MessageDuplicationDelay: TimeSpan (default:
TimeSpan.FromMinutes(2))When a message is detected to be duplicated during the acquisition, delays the message release to the queue.
Pollster__ProcessingCrashedDelay: TimeSpan (default:
TimeSpan.FromSeconds(10))The delay after the agent has verified the other agent crashed before retrying the task.
Pollster__FailReadinessIfNoTasks: bool (default:
false)Indicates that readiness health check fails when no tasks are available for this pollster.
Pollster__CacheEvictionThreshold: double (default:
0)Fraction of disk space used (0–1) above which LRU eviction is triggered. Set to
0to disable caching entirely. When the cache usage reaches or exceeds this threshold, eviction policies may be applied to remove items and free up space. Adjust this value to control how aggressively the cache manages its capacity.
25.1.6. Options for Submitter
Submitter__DefaultPartition: string (default:
string.Empty)Name of the default partition in which submit tasks
Submitter__MaxErrorAllowed: int (default:
5)Specify the maximum number of errors a submitter can encounter before being considered unhealthy Negative values disable the check
Submitter__DeletePayload: bool (default:
false)Toggle payload suppression after the task is successful default: false
Submitter__DegreeOfParallelism: int (default:
0)Parallelism used in the control plane when possible. Defaults to the number of threads.
Submitter__PreferredMessageSize: int (default:
2 * 1024 * 1024)Preferred message size for streamed upload and download. Serves as the threshold to switch from unitary CreateResults to UploadResultData in client codes. The value must be less than the limit of gRPC messages accepted by the server.
25.1.7. Options for MongoDB
MongoDB__Tls: bool (default:
false)Whether to use TLS for the connection.
MongoDB__AllowInsecureTls: bool (default:
false)Whether to allow insecure TLS connections.
MongoDB__DirectConnection: bool (default:
false)Whether to connect directly to the MongoDB server, bypassing the replica set.
MongoDB__ReplicaSet: string (default:
"")Name of the replica set to connect to.
MongoDB__Host: string (default:
"")Hostname of the MongoDB server.
MongoDB__Port: int (default:
0)Port number for the MongoDB server connection.
MongoDB__CAFile: string (default:
"")Path to the Certificate Authority (CA) file for TLS connections.
MongoDB__CredentialsPath: string (default:
"")Path to the credentials file for authentication.
MongoDB__User: string (default:
"")Username for connecting to the MongoDB server.
MongoDB__ConnectionString: string (default:
"")Connection string for the MongoDB server. If not null or empty, the MongoClientSettings are derived from it. Other connection options like Host, Port, User, Password and DataBaseName are ignored in this case. That is, the connection options provided in the ConnectionString take precedence over the connection options defined in this class.
MongoDB__Password: string (default:
"")Password for connecting to the MongoDB server.
MongoDB__MaxRetries: int (default:
5)Maximum number of retry attempts for failed operations.
MongoDB__DatabaseName: string (default:
"ArmoniK")Name of the database to connect to.
MongoDB__DataRetention: TimeSpan (default:
TimeSpan.MaxValue)Duration for which data should be retained in the database.
MongoDB__TableStorage: TableStorage (default:
())Table storage configuration.
MongoDB__MaxConnectionPoolSize: int (default:
500)Maximum size of the connection pool.
MongoDB__ServerSelectionTimeout: TimeSpan (default:
TimeSpan.FromMinutes(2))Timeout duration for server selection.
MongoDB__Sharding: bool (default:
false)Whether sharding is enabled for the database.
MongoDB__AuthSource: string (default:
"")Authentication source for the MongoDB connection.
MongoDB__CausalConsistency: bool? (default:
null)Activate causal consistency for MongoDB operations.
MongoDB__LogRequest: bool (default:
false)Log requests made to the MongoDB server for debugging and monitoring purposes.
MongoDB__UseHashed: bool (default:
true)Whether to use hashed indexes when creating indexes for MongoDB collections. If true, hashed indexes will be created; otherwise, ascending indexes will be used.
25.1.8. Options for Redis
Redis__InstanceName: string (default:
"")Name of the Redis instance.
Redis__EndpointUrl: string (default:
"")Endpoint URL for the Redis server.
Redis__ClientName: string (default:
"")Client connecting to the Redis server.
Redis__SslHost: string (default:
"")Hostname for SSL connections.
Redis__Timeout: int (default:
0)Timeout duration (in milliseconds) for Redis operations.
Redis__Password: string (default:
"")Password for authenticating with the Redis server.
Redis__User: string (default:
"")Username for authenticating with the Redis server.
Redis__Ssl: bool (default:
false)Whether to use SSL for the connection.
Redis__CredentialsPath: string (default:
"")Path to the credentials file for authentication.
Redis__CaPath: string (default:
"")Path to the Certificate Authority (CA) file for SSL connections.
Redis__MaxRetry: int (default:
5)Maximum number of retry attempts for failed operations.
Redis__MsAfterRetry: int (default:
500)Duration (in milliseconds) to wait after a retry attempt.
Redis__TtlTimeSpan: TimeSpan (default:
TimeSpan.MaxValue)Key expiration time (TTL) for keys in the Redis database.
Redis__AllowHostMismatch: bool (default:
false)Whether to allow host name mismatches in SSL certificates.
25.1.9. Options for MetricsExporter
MetricsExporter__Metrics: string (default:
"")Gets or sets the metrics to be exported. This property defines the specific metrics that the exporter will handle. The metrics are separated by commas and can the following:
Creating
Submitted
Dispatched
Completed
Error
Timeout
Cancelling
Cancelled
Processing
Processed
Retried
Pending
Paused
Queued
The following metrics are always present:
Submitted
Dispatched
Processing
Queued
MetricsExporter__CacheValidity: TimeSpan (default:
TimeSpan.FromSeconds(5))Gets or sets the cache validity duration. This defines the time span for which the cached metrics are considered valid.
MetricsExporter__DegreeOfParallelism: int (default:
0)
25.1.10. Options for S3
S3__EndpointUrl: string (default:
"")Endpoint URL of the S3 bucket. Default is an empty string.
S3__Login: string (default:
"")Login credential for accessing the S3 service. Default is an empty string.
S3__Password: string (default:
"")Password associated with the login for S3 access. Default is an empty string.
S3__MustForcePathStyle: bool (default:
false)Boolean property to indicate whether path-style access should be enforced when connecting to the S3 service. Defaults to false.
S3__BucketName: string (default:
"")Name of the S3 bucket that the application will interact with. Default is an empty string.
S3__DegreeOfParallelism: int (default:
0)Number of tasks to be used in parallel execution
S3__ChunkDownloadSize: int (default:
65536)Size of one chunk when downloading an object by chunks
S3__UseChunkEncoding: bool (default:
true)Use Chunk Encoding during upload Should be disabled for GCS
S3__UseChecksum: bool (default:
true)If true, checksum will be verified by the client during upload
S3__MaxRetry: int (default:
5)Number of retry in case of a connection error
S3__MsAfterRetry: int (default:
500)Delay in milliseconds after an error
25.1.11. Options for AMQP
Amqp__Host: string (default:
"")Hostname of the AMQP server.
Amqp__CredentialsPath: string (default:
"")Path to the credentials file for authentication.
Amqp__User: string (default:
"")Username for connecting to the AMQP server.
Amqp__Password: string (default:
"")Password for connecting to the AMQP server.
Amqp__Scheme: string (default:
"")Scheme (protocol) used for the connection (e.g., “amqp”, “amqps”).
Amqp__CaPath: string (default:
"")Path to the Certificate Authority (CA) file for TLS connections.
Amqp__Port: int (default:
0)Port number for the AMQP server connection.
Amqp__MaxPriority: int (default:
0)Maximum priority level for messages in the queue.
Amqp__AllowHostMismatch: bool (default:
false)Whether to allow host name mismatches in TLS certificates.
Amqp__MaxRetries: int (default:
0)Maximum number of retry attempts for failed operations.
Amqp__LinkCredit: int (default:
0)Link credit for flow control in the AMQP connection. The minimum valued supported is 1 For more details see:
Amqp__ParallelismLimit: int (default:
0)Limit on the level of parallelism for operations. If parallelismLimit is 0, the number of threads is used as the limit. If parallelismLimit is negative, no limit is enforced.
Amqp__AllowInsecureTls: bool (default:
false)Whether to allow insecure TLS connections.
Amqp__Prefix: string (default:
"")Path prefix for the AMQP resources.
Amqp__Separator: string (default:
"###")Separator inserted between the partition ID and the queue/link index in AMQP resource names.
25.1.12. Options for PubSub
PubSub__ProjectId: string (default:
string.Empty)GCP project id containing the PubSub instance
PubSub__Prefix: string (default:
string.Empty)Prefix to add to the created topics and subscriptions
PubSub__MessageRetention: TimeSpan (default:
TimeSpan.FromDays(1))Minimum duration to retain a message after it it published to the topic
PubSub__AckDeadlinePeriod: int (default:
120)Acknowledgment deadline in seconds: If a message wasn’t acknowledged within this deadline, it will be redelivered .
PubSub__AckExtendDeadlineStep: int (default:
60)Time in seconds between two modifications of acknowledgment deadline
PubSub__KmsKeyName: string (default:
string.Empty)Name of the KMS key used to protect messages
PubSub__MessageOrdering: bool (default:
false)Option to force the ordering of messages (queue property)
PubSub__ExactlyOnceDelivery: bool (default:
false)Guarantee that messages are not duplicated at Pub/Sub level
25.1.13. Options for SQS
SQS__ServiceURL: string (default:
string.Empty)URL of the AWS endpoint hosting the SQS service. Leave empty to use the default AWS endpoint resolution (recommended for production). Override for local testing (e.g.
http://localhost:4566for LocalStack).SQS__Prefix: string (default:
string.Empty)String prepended to every queue name created by this adapter. Useful to disambiguate queues when multiple ArmoniK deployments share the same AWS account.
SQS__Tags: Dictionary<string, string> (default:
())AWS resource tags applied to each queue at creation time. Keys and values must comply with AWS tagging rules .
SQS__AckDeadlinePeriod: int (default:
120)Visibility timeout in seconds for received messages. A message that has not been deleted within this window becomes visible again and will be redelivered. Defaults to
120seconds.SQS__AckExtendDeadlineStep: int (default:
60)Interval in seconds at which the visibility timeout is renewed for messages that are still being processed. Must be strictly less than
AckDeadlinePeriodto avoid premature redelivery. Allow sufficient buffer time to account for clock skew and processing delays. Defaults to60seconds.SQS__WaitTimeSeconds: int (default:
20)Duration in seconds the adapter waits for messages during a single SQS
ReceiveMessagecall. Valid range is 0–20.0uses short polling; 1–20 uses long polling. Long polling is recommended as it reduces empty responses and lowers cost. Defaults to20seconds.SQS__DegreeOfParallelism: int (default:
0)Maximum number of concurrent operations when the adapter processes items in parallel. Set to
0to use the number of logical processors on the machine (System.Environment.ProcessorCount).SQS__MaxPriority: int (default:
0)Number of distinct priority levels. One SQS queue is created per priority level. Set to
0to disable priority-based routing (single queue).SQS__Attributes: Dictionary<string, string> (default:
())Additional SQS queue attributes applied at queue creation time (e.g.
FifoQueue,KmsMasterKeyId). These are merged with any attributes set by the adapter itself; adapter-managed attributes take precedence. For the full list of supported attributes, see the AWS CreateQueue API reference .SQS__MaxRetries: int (default:
5)Maximum number of retry attempts for transient AWS SDK errors before the operation is considered failed. Defaults to
5.SQS__UseSessionMessageGroupId: bool (default:
false)When
true, the SQSMessageGroupIdattribute is set to the task’s session ID, ensuring that all messages belonging to the same session are delivered in order on a FIFO queue. Requires the target queues to be FIFO queues (suffix.fifo). Defaults tofalse.