Configuration Reference

AstraLog follows the 12-Factor App methodology. All configuration is handled via environment variables, making it easy to deploy on Kubernetes, AWS ECS, Docker, or bare metal.

General Settings

VariableDescriptionDefaultRequired
PORTThe HTTP port the ingestion API listens on.8080No
AUTH_TOKENSecret Bearer token for client authentication.default-secret-tokenNo

S3 / Object Storage

These settings define where AstraLog will stage compressed log batches.

VariableDescriptionDefaultRequired
S3_ENDPOINTURL of your S3 provider (MinIO, AWS, R2).http://localhost:8787Yes
S3_REGIONThe AWS region of your bucket.autoYes
S3_BUCKETThe name of the destination bucket.test-bucketYes
S3_ACCESS_KEYYour S3 Access Key ID.any-access-keyYes
S3_SECRET_KEYYour S3 Secret Access Key.any-secret-keyYes

ClickHouse Settings

These settings define the destination for analytical querying.

VariableDescriptionDefaultRequired
CLICKHOUSE_ADDRTCP address of your ClickHouse cluster.localhost:9000Yes
CLICKHOUSE_USERThe database username.defaultYes
CLICKHOUSE_PASSThe database password.logpasswordYes
CLICKHOUSE_DBDatabase name. Created if it doesn’t exist.astralogYes

🛡️ Security Note: In production, never commit your .env file to source control. Inject these variables using a secure secrets manager (like AWS Secrets Manager, GitHub Secrets, or Doppler).