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
| Variable | Description | Default | Required |
|---|---|---|---|
PORT | The HTTP port the ingestion API listens on. | 8080 | No |
AUTH_TOKEN | Secret Bearer token for client authentication. | default-secret-token | No |
S3 / Object Storage
These settings define where AstraLog will stage compressed log batches.
| Variable | Description | Default | Required |
|---|---|---|---|
S3_ENDPOINT | URL of your S3 provider (MinIO, AWS, R2). | http://localhost:8787 | Yes |
S3_REGION | The AWS region of your bucket. | auto | Yes |
S3_BUCKET | The name of the destination bucket. | test-bucket | Yes |
S3_ACCESS_KEY | Your S3 Access Key ID. | any-access-key | Yes |
S3_SECRET_KEY | Your S3 Secret Access Key. | any-secret-key | Yes |
ClickHouse Settings
These settings define the destination for analytical querying.
| Variable | Description | Default | Required |
|---|---|---|---|
CLICKHOUSE_ADDR | TCP address of your ClickHouse cluster. | localhost:9000 | Yes |
CLICKHOUSE_USER | The database username. | default | Yes |
CLICKHOUSE_PASS | The database password. | logpassword | Yes |
CLICKHOUSE_DB | Database name. Created if it doesn’t exist. | astralog | Yes |
🛡️ Security Note: In production, never commit your
.envfile to source control. Inject these variables using a secure secrets manager (like AWS Secrets Manager, GitHub Secrets, or Doppler).