Server Settings Overview

Before starting RevDeBug server you need to configure RevDeBug - to do so create or edit β€œ.env” file inside the cloned docker-compose project (on the same level as docker-compose.yml file is located).

cp .env-template .env

Required environment variables:

Name

Explanation

Default

REVDEBUG_SERVER_NAME

Fully qualified DNS server name or IP address ie.: servername.your.domain.com

REVDEBUG_AUTH_OPENID_SECRET

A secret used within an external authentication service provider

change_me_in_env_file

Those variables are stored in the database on the first server deployment, if you have set them up incorrectly or want to change them please read the troubleshooting section below.

Optional environment variables:

Name

Explanation

Default

REVDEBUG_VOLUME_PATH

Data directory on the host virtual machine

/var/revdebug/server/repo

REVDEBUG_ROOTVOLUME_PATH

The path to the directory in the host environment where Nginx service logs will be stored

/var/revdebug

REVDEBUG_CERTIFICATE_PATH

Path to the directory in the host environment, where x509 certificates are stored. Must contain the files ${REVDEBUG_CERTIFICATE_NAME}.crt and ${REVDEBUG_CERTIFICATE_NAME}.key

/var/revdebug/cert

REVDEBUG_VOLUME_GIT_SSH_KEYS

The path to the private key linked to the git account. Allows you to autoload program code from your git. Read more here

/var/revdebug/git-ssh-key-dir

REVDEBUG_VOLUME_CAPATH

Path to the directory in the host environment containing client CA certificates to be recognized by the RevDeBug server. Required to enable connections with git repositories when using HTTPS with internal Certificate Authority(not required if using SSH connectivity - please read section). Public certficates of internal CA need to be present in the directory in a PEM format and file extension of ".crt" when the server starts (after uploading the files, if the server is running, you would need to restart the server)

/var/revdebug/ca

REVDEBUG_POSTGRES_SERVER

PostgreSQL database server address (only change if you would like to use external database server)

postgres

REVDEBUG_POSTGRES_PORT

PostgreSQL database server port (only change if you would like to use external database server)

5432

REVDEBUG_POSTGRES_USER

PostgreSQL database user

rdb_user

REVDEBUG_POSTGRES_PASSWORD

PostgreSQL database password

masterkey

REVDEBUG_POSTGRES_DATABASE

PostgreSQL database name

revdebug_db

REVDEBUG_CERTIFICATE_NAME

Name of the x509 certificate to enable SSL/TLS encryption.

The directory defined by the REVDEBUG_CERTIFICATE_PATH

REVDEBUG_APM_AS_DEFAULT

Specifying the default view that is provided by the RevDeBug server

true

REVDEBUG_KEEP_ACCESS_LOGS

Specifying whether the access logs generated by NGINX should be preserved

false

SW_CORE_METRICS_DATA_TTL

The lifespan of metrics data (in days) on Dashboards. Minimum value is 2

14

SW_CORE_RECORD_DATA_TTL

The lifespan of Traces and Logs (in days). Minimum value is 2

7

SERVER_maxHttpHeaderSize

This size may need to be adjusted when using external authentication and authorization service providers

640000

REVDEBUG_AUTH_OPENID_CLIENTID

The customer ID used within an external authentication service provider

DevOps

REVDEBUG_AUTH_OPENID_ADDRESS

Address of an external authentication service provider. In the case of a keycloak instance, set: http://REVDEBUG_SERVER_NAME/auth/realms/rdbRealm

http://servername.your.domain.com/auth/realms/rdbRealm

REVDEBUG_AUTH_OPENID_SECRET

Secret used within an external authentication service provider

change_me_in_env_file

REVDEBUG_DEFAULT_USER

Specifies whether to create a default RevDeBug user. The user will have the highest permissions

false

REVDEBUG_USER

RevDeBug default username

REVDEBUG_USER_PASSWORD

RevDeBug default user password

KEYCLOAK_USER_UPDATE

Determines whether the keycloak user should be updated according to the KEYCLOAK_USER and KEYCLOAK_PASSWORD variables, after a revdebug restart

false

KEYCLOAK_USER

Admin user for keycloak

admin

KEYCLOAK_PASSWORD

Admin user password for keycloak

change_me_in_env_file

OpenSearch Configuration for Performance Optimization

The configuration update involves adjusting OPENSEARCH_JAVA_OPTS to allocate additional memory, thereby directing a more significant portion of the workload toward memory utilization and potentially reducing the CPU load on RevDeBug Server. Moreover, the modification switches OPENSEARCH_INDEX_STORE_TYPE to enhance memory-related operations by utilizing mmapfs as the index storage type.

For example when running on a server with 32GB of RAM available consider the following configuration changes in the .env file:

.env
# Adjust memory allocation
OPENSEARCH_JAVA_OPTS="-Xms16g -Xmx16g"
# Enhance memory-related operations
OPENSEARCH_INDEX_STORE_TYPE=mmapfs

These changes aim to optimize memory usage and improve overall system performance by allowing OpenSearch to utilize more memory (-Xms16g -Xmx16g) and using the memory-mapped file system (mmapfs) for index storage. This shift towards memory-centric operations can lead to more efficient utilization of system resources and potentially alleviate CPU bottlenecks when monitoring high throughput applications.

Last updated