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).
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:
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