Environments

The tables below contain all of the environment variables used to configure each microservice container. Default values are defined where applicable as well as descriptions for each.

Shared

The following envrionment variables are shared across all microservice images:

NameTypeDefaultDescription
NODE_ENVString'production'microservice runtime environment
PORTNumber3000microservice port to listen on
HTTP_VERSIONNumber2HTTP version for backward compatibility
SECUREString'false'whether to run microservice secure or not. defaults to 'false' since we cannot provide certificates
CLUSTER_SIZENumber[total CPUs available]defaults to the total available CPUs allocated to the container or to the size you specify here
SSL_CERTStringdefault path for SSL certificate file or the full certificate
SSL_KEYStringdefault path for SSL key file or the full key
PING_URLString'/ping'URL to use for shallow health checks for the microservice
ACTORStringActor (Model) the microservice is responsible for
ACTOR_LIBStringmodule where the ACTOR resides
ACTOR_URLSStringcomma-separated URLs associated with the Actor
TELEMETRYString'false'whether to run OpenTelemetry integration
TELEMETRY_PLUGINSStringJSON string of OpenTelemetry plugins to enable
TELEMETRY_SERVICE_NAMEStringservice name for OpenTelemetry
TELEMETRY_URL_METRICSStringOpenTelemetry Collector URL for metrics
TELEMETRY_URL_TRACESStringOpenTelemetry Collector URL for traces

Base

All of the environment variables in Shared.

Producer

All of the environment variables in Shared and the following:

NameTypeDefaultDescription
EVENT_STORE_TOPICStringKafka topic the events will be stored under
EVENT_STORE_IDStringunique identifier for Kafka client connection
EVENT_STORE_BROKERSStringcomma separated URLs where Kafka is hosted
EVENT_STORE_BUFFERNumber100maximum number of incoming messages to batch
EVENT_STORE_TIMEOUTNumber2000time (in `ms`) to poll Kafka for delivery reports

Consumer

All of the environment variables in Shared and the following:

NameTypeDefaultDescription
EVENT_STORE_TOPICStringKafka topic the events will be consumed from
EVENT_STORE_IDStringunique identifier for Kafka client connection
EVENT_STORE_GROUP_IDStringdefines Kafka Consumer group id
EVENT_STORE_BROKERSStringcomma separated URLs where Kafka is hosted
EVENT_STORE_FROM_STARTString'false'tells Consumer whether or not to start at the beginning of the topic
EVENT_STORE_PARTITIONSNumber1tells Consumer how many partitions to consume
EVENT_STORE_BUFFERNumbernullmaximum number of incoming messages to batch
EVENT_STORE_TIMEOUTNumbernulltime (in `ms`) to poll Kafka for delivery reports

Stream Processor

All of the environment variables in Shared and the following:

NameTypeDefaultDescription
PROCESSOR_TYPEString'producer'type of Stream Processor microservice you wish to run (can also be 'consumer' or 'stream_processor')
EVENT_STORE_PRODUCER_TOPICStringKafka topic the events will be stored under
EVENT_STORE_CONSUMER_TOPICStringKafka topic the events will be consumed from
EVENT_STORE_IDStringunique identifier for Kafka client connection
EVENT_STORE_GROUP_IDStringdefines Kafka Consumer group id
EVENT_STORE_BROKERSStringcomma separated URLs where Kafka is hosted
EVENT_STORE_FROM_STARTString'false'tells Consumer whether or not to start at the beginning of the topic
EVENT_STORE_PARTITIONSNumber1tells Consumer how many partitions to consume
EVENT_STORE_BUFFERNumber100maximum number of incoming messages to batch
EVENT_STORE_TIMEOUTNumber2000time (in `ms`) to poll Kafka for delivery reports
CACHE_URLStringURL where Redis is hosted
LOCK_TTLNumber2000Redlock time to live before lock is released
LOCK_DRIFT_FACTORNumber0.01Redlock drift factor setting
LOCK_RETRY_COUNTNumber0Redlock retry count setting, should be set to zero for concurrency
LOCK_RETRY_DELAYNumber400Redlock retry delay in milliseconds
LOCK_RETRY_JITTERNumber400Redlock random retry jitter in milliseconds to randomize retries