Like Jitsu? Give us a star on ⭐ GitHub!

πŸ“œ Configuration

Configuration UI

πŸ‘©β€πŸ”¬ Extending Jitsu

Overview
Destination Extensions
Source Extensions
API Specs

Jitsu Internals

Jitsu Server

There' two options on how to deploy Jitsu Server.

  • Standalone Deployment (with ENV variables): server won't pull configuration from Configurator. This is a easiest way to deploy Jitsu server. For configuring destinations, sources, API keys and etc you'll need to use API_KEYS_URL, DESTINATIONS_URL or SOURCES_URL which point to local file or, URL containing configuration, or JSON object (yes, _URL postfix is a little confusing). See detailed explanation below.

  • Standalone Deployment (with config file): Jistu server is configured with Configurator UI β€” it pulls configuration from Configurator with HTTP.

  • Coupled with Configurator (config with a file): Jitsu server is configured with Configurator UI, it pulls configuration from Configurator with HTTP (see JITSU_CONFIGURATOR_URL). You'll still need to set system properties such as CLUSTER_ADMIN_TOKEN, REDIS_URL

In all cases you should use @jitsucom/server image

Standalone deployment

Please, read a section about structure of Jitsu Server configuration file. The is file called eventnative.yaml (we renamed from EventNative to Jitsu a while ago, but you'll see the name in config and code here and there).

Don't forget to map /home/eventnative/data/config/eventnative.yaml to locally created configuration file!

Exposed ports

@jitsucom/server image exposes 8001 port

Environment Variable

If you're configuring Jitsu in Standalone mode (with configuration file) - skip this section, those variables will not work!

CLUSTER_ADMIN_TOKEN
required
Docker Env Var
string

Admin Token for authorizing requests from/to Configurator.

REDIS_URL
required
Docker Env Var
string

Redis connection string: redis://:password@host:port or redis://host:port without password

SERVER_PORT
optional
Docker Env Var
integer

Jitsu Server listening port. Default value is 8001.

JITSU_CONFIGURATOR_URL
optional
Docker Env Var
string

HTTP URL of Jitsu Configurator. Required if Jitsu Server is going to be configured with Configurator UI. If JITSU_CONFIGURATOR_URL following env variables will be ignored: API_KEYS_URL, DESTINATIONS_URL and SOURCES_URL

USER_RECOGNITION_TTL_MINUTES
optional
Docker Env Var
number

Default value is 10080 minutes (7 days). This setting controls when user events are evicted from user recognition cache. Read more about user recognition eviction policy

TLS_SKIP_VERIFY
optional
Docker Env Var
boolean

Redis: skip client certificate verification

USER_RECOGNITION_ENABLED
optional
Docker Env Var
boolean

If Retroactive User Recognition should be enabled. false by default

USER_RECOGNITION_REDIS_URL
optional
Docker Env Var
string

Redis connection string: redis://:password@host:port or redis://host:port without password for using separate Redis for anonymous events. Read more about Redis storage memory optimization.

EVENTS_QUEUE_REDIS_URL
optional
Docker Env Var
string

Redis connection string: redis://:password@host:port or redis://host:port without password for using separate Redis for incoming events JSON queue. All destinations in stream mode uses Redis events queue (if REDIS_URL or EVENTS_QUEUE_REDIS_URL configured). Otherwise they use in-memory queue).

MAX_MIND_PATH
optional
Docker Env Var
boolean

Path to MaxMind file (read more about geo-resolution). Can be either path to file (inside docker-mounted dir) or maxmind://[license key]. The latter will make Jitsu to download files from MaxMind servers using your license key. Read more about the capability read more about here.

SLACK_NOTIFICATIONS_WEBHOOK
optional
Docker Env Var
string

Slack webhook URL. Server starts, system errors, and panics information will be sent there

GOOGLE_ADS_DEVELOPER_TOKEN
optional
Docker Env Var
string

Developer Token for Google Ads connector

SQL_DDL_LOG_ENABLED
optional
Docker Env Var
boolean

Enable SQL DDL debug logs (create, update table statements). Default value is true

SQL_QUERIES_LOG_ENABLED
optional
Docker Env Var
boolean

Enable SQL inserts debug logs. Warning: this feature can take significant disk space: all SQL insert statements will be written into the log file. Default value is false

SOURCES_SYNC_BATCH_SIZE
optional
Docker Env Var
integer

Synchronization data batch size for writing into destinations. Default value is 10000. If you server has enough RAM you can increase this value for speed up your sources synchronization.

API_KEYS_URL
optional
Docker Env Var
JSON object

Can be an URL for getting API keys JSON or raw JSON. Read more about API keys configuration format. This var is not compatible with JITSU_CONFIGURATOR_URL (see above)

DESTINATIONS_URL
optional
Docker Env Var
JSON object

Can be an URL for getting Destinations configuration JSON or raw JSON. Read more about Destinations configuration format. This var is not compatible with JITSU_CONFIGURATOR_URL (see above)

SOURCES_URL
optional
Docker Env Var
JSON object

Can be an URL for getting Sources configuration JSON or raw JSON. Read more about Sources configuration format. This var is not compatible with JITSU_CONFIGURATOR_URL (see above)

JITSU_EXTENDED_TELEMETRY_DISABLED
optional
Docker Env Var
boolean

Disables extended telemetry collection.

JITSU_EXTENDED_TELEMETRY_DEPLOYMENT_ID
optional
Docker Env Var
string

Deployment ID for extended telemetry collection. By default, clusterId would be used as deployment ID.

JITSU_UI_BASE_URL
optional
Docker Env Var
string

Base Configurator UI URL for generating links in notifications.

JITSU_HTTP_CONTEXT_ENRICHMENT
optional
Docker Env Var
boolean

Whether the server should enrich incoming HTTP events with HTTP context (headers, etc.). Please note that when upgrading from Jitsu 1.41.6 you can switch this setting to true only separately from the upgrade itself, otherwise event data may get corrupted.

Volumes

Do not forget to chmod 777 /local_logs_mount if you're mounting /home/eventnative/data/logs/



Do mount jitsu_workspace and /var/run/docker.sock if you want Airbyte based connectors to work

Path (inside docker image) Description
/home/eventnative/data/logs/*
(Highly recommended to mount)

To send data in batches to destination, Jitsu needs to persist current batch on local disk. Internal queues are also persisted locally. If you don't want to loose the data, it's highly recommended to mount this volume.

Example: -v $PWD/server_logs/:/home/eventnative/data/logs/, make sure that the volume is writable with: `chmod 777 $PWD/server_logs/

This volume contains server application logs as well

/home/eventnative/data/airbyte
(optional)

Required for Airbyte connectors support. Mount with -v jitsu_workspace:/home/eventnative/data/airbyte). Name jitsu_workspace should be exactly this.

/var/run/docker.sock
(optional)

Required for Airbyte connectors support. Mount to /var/run/docker.sock (with -v /var/run/docker.sock:/var/run/docker.sock)

/home/eventnative/data/config/eventnative.yaml
(optional)

That's the server configuration file. Do not touch it unless you're configuring Jitsu in standalone mode