Skip to main content

Server configuration

Datagrok supports several deployment schemas which can be configured using GROK_MODE and GROK_PARAMETERS environment variables.

Datlas Configuration

GROK_PARAMETERS is a JSON-formatted environment variable with the Datlas configuration options:

OptionRequiredDefaultDescription
dbServerRequiredPostgres database server
dbPortOptional5432Postgres database server port
dbRequiredDatagrok database name
dbLoginRequiredUsername to connect to database
dbPasswordRequiredPassword to connect to database
dbSslOptionalfalseIf set to true, TLS connection will be used to connect to database
dbAdminLoginOptionalPostgres admin username to create user and database for Datagrok
dbAdminPasswordOptionalPostgres admin password to create user and database for Datagrok
googleStorageCertOptionalAccess certificate to Google Cloud Storage. If set, GCS will be used for persistent data storage
amazonStorageRegionOptionalS3 region
amazonStorageBucketOptionalS3 bucket name
amazonStorageIdOptionalS3 credential ID, Datagrok will resolve EC2 role if empty
amazonStorageKeyOptionalS3 credential secret key, Datagrok will resolve EC2 role if empty
googleStorageBucketOptionalGoogle Cloud Storage bucket name
googleStorageCredentialsOptionalGoogle Cloud Storage credentials
googleStorageProjectOptionalGoogle Cloud Storage project ID
adminPasswordOptionalDatagrok admin user password which will be created on first start
debugOptionalfalseExtended logging and saving stack traces
useSSLOptionalfalseIf set to true, Datlas serves TLS connections
certPathOptionalPath to the TLS certificate
certKeyPathOptionalPath to the TLS certificate key
certKeyPwdOptionalPassword to the TLS certificate key
queueSettingsOptionalSee Queue SettingsConfiguration for Scripting and Computations
dockerSettingsOptionalSee Docker SettingsConfiguration for Plugins Docker Management
connectorsSettingsOptionalSee Connectors SettingsConfiguration for External Database Connectivity and file storage providers

Queue Settings

queueSettings object:

OptionDefaultDescription
useQueuetrueEnables usage of queue for calls execution (required for scripting)
amqpHostrabbitmqHost of the AMQP message queue
amqpPort5672Port of the AMQP message queue
amqpUserguestAMQP username
amqpPasswordguestAMQP password
tlsfalseEnables TLS for AMQP connection
taskPickupTimeout60000Timeout in ms for task pickup by worker
queueReconnectWaitTime1500Time in ms to wait before retrying connection
pipeHostgrok_pipeHost of the grok_pipe service
pipePort3000Port of the grok_pipe service
pipeKeydatagrok-keyKey for grok_pipe authentication

Docker Settings

dockerSettings object:

OptionDefaultDescription
useGrokSpawnertrueEnables Grok Spawner for managing containers
grokSpawnerApiKeytest-x-api-keyAPI key for Grok Spawner
grokSpawnerHostgrok_spawnerHost for Grok Spawner
grokSpawnerPort8000Port for Grok Spawner
imageBuildTimeoutMinutes30Max wait time in minutes for Docker image build
proxyRequestTimeout60000Max wait time in ms for proxy request to a Docker container

Connectors Settings

connectorsSettings object:

OptionDefaultDescription
useGrokConnecttrueEnables Grok Connect for additional data connectors
grokConnectHostgrok_connectHost for Grok Connect
grokConnectPort1234Port for Grok Connect
externalDataFrameCompresstrueEnables external data frame compression
sambaVersion3.0Samba version
sambaSpaceEscapenoneSpecifies how spaces are escaped in Samba (none, space, quotes)
dataframeParsingModeNew ProcessDataFrame parsing mode (Main Thread, New Thread, New Process)
localFileSystemAccessfalseEnables local file system access
windowsSharesProxyProxy for Windows shares

Overriding Datlas Configuration with Environment Variables

In addition to supplying the full JSON, you can override *ndividual values using environment variables. This is useful when deploying in containerized or cloud environments where injecting single parameters is easier than rebuilding the entire configuration object.

Naming Convention

The environment variable name is derived from the configuration key by applying the following rules:

  1. Prefix every variable with GROK_PARAMETERS_
  2. Flatten nested objects by joining keys with a double underscore __. Example:
    • queueSettings.queueReconnectWaitTimeQUEUE_SETTINGS__QUEUE_RECONNECT_WAIT_TIME
  3. Convert key names to uppercase.
  • dbLoginDB_LOGIN
  • grokConnectHostGROK_CONNECT_HOST

Examples

Config OptionEnvironment Variable Name
dbLoginGROK_PARAMETERS_DB_LOGIN
dbAdminLoginGROK_PARAMETERS_DB_ADMIN_LOGIN
queueSettings.queueReconnectWaitTimeGROK_PARAMETERS_QUEUE_SETTINGS__QUEUE_RECONNECT_WAIT_TIME
connectorsSettings.grokConnectHostGROK_PARAMETERS_CONNECTORS_SETTINGS__GROK_CONNECT_HOST
dockerSettings.proxyRequestTimeoutGROK_PARAMETERS_DOCKER_SETTINGS__PROXY_REQUEST_TIMEOUT
connectorsSettings.sambaSpaceEscapeGROK_PARAMETERS_CONNECTORS_SETTINGS__SAMBA_SPACE_ESCAPE

Datlas Startup Mode

GROK_MODE possible values:

  • start - Starts the application without database and storage deployment.
  • deploy - Datlas will perform the full deployment.
  • auto - Datlas will check the existing database and storage and perform deployment only if needed.

Settings

You can set Datargok server settings as a part of GROK_PARAMETERS. Get the template JSON in /settings view using {} button near the server settings section. Put any parameter to settings map of GROK_PARAMETERS respecting the hierarchy.