Skip to content

Reference: Environment Variables ​

Configuring Txlog Server is straightforward because I’ve designed it to be entirely environment-driven. Whether you're running it in a Docker container or directly on a Linux host, these variables are the levers you'll use to tune the system to your needs. Let's look at the options available to you.

General Settings ​

These are the basic knobs that control the server's identity and how it talks to you through logs.

VariableDefaultDescription
INSTANCE-The name of your environment (e.g., "Production"). It’s displayed in the UI, so why not make it clear for your team?
LOG_LEVELINFOHow much detail do you want in the logs? Choose from DEBUG, INFO, WARN, or ERROR.
GIN_MODEreleaseSetting this to release mode isn't just for performance; it also ensures that session cookies are automatically marked as Secure.
PORT8080The HTTP port I'll listen on.

Database Configuration ​

We use PostgreSQL for everything, and these variables tell the server exactly how to find and talk to your database instance.

VariableRequiredDescription
PGSQL_HOSTYesYour database hostname or IP address.
PGSQL_PORTYesThe database port (usually 5432).
PGSQL_USERYesYour database username.
PGSQL_PASSWORDYesYour database password.
PGSQL_DBYesThe name of the database I should use.
PGSQL_SSLMODEYesSSL mode (disable, require, verify-full). In production, I’d strongly suggest verify-full for maximum security.

Authentication (OIDC) ​

If you're using a modern identity provider like Google, Okta, or Authentik, OIDC is the way to go.

VariableRequiredDescription
OIDC_ISSUER_URLNoYour OIDC Provider URL (e.g., https://accounts.google.com).
OIDC_CLIENT_IDNoThe Client ID provided by your identity provider.
OIDC_CLIENT_SECRETNoThe Client Secret associated with your ID.
OIDC_REDIRECT_URLNoThe callback URL. Make sure this exactly matches what you’ve configured in your provider’s dashboard!

Authentication (LDAP) ​

For those of you still relying on a classic directory service, I’ve included robust LDAP support.

VariableRequiredDescription
LDAP_HOSTNoYour LDAP server hostname.
LDAP_PORTNoThe LDAP port (usually 389 or 636).
LDAP_USE_TLSNoSet this to true if you're using LDAPS.
LDAP_BIND_DNNoThe DN for your service account.
LDAP_BIND_PASSWORDNoThe password for that service account.
LDAP_BASE_DNNoWhere should I start searching for users?
LDAP_USER_FILTERNoThe filter I’ll use for logins (e.g., (uid=%s)).
LDAP_ADMIN_GROUPNoThe DN of the group that gets full admin access.
LDAP_VIEWER_GROUPNoThe DN of the group that only gets read-only access.
LDAP_GROUP_FILTER(member=%s)The LDAP filter I'll use to check for group membership.

Scheduler & Data Retention ​

Txlog Server handles a lot of housekeeping in the background. You can use these variables to control how long we keep your history and exactly when these background jobs run.

VariableDefaultDescription
CRON_RETENTION_DAYS7How many days of execution history should we keep?
CRON_RETENTION_EXPRESSION0 2 * * *When should I run the cleanup job? (Standard CRON expression).
CRON_STATS_EXPRESSION0 * * * *How often should I recalculate the dashboard statistics?
CRON_OSV_EXPRESSION0 4 * * *When should I sync the OSV vulnerability data?