Configuration
Chronicle Server can be configured using a chronicle.json file or environment variables. Environment variables take precedence over file-based configuration, which is useful for containerized deployments.
Example configuration
Section titled “Example configuration”{ "port": 35000, "storage": { "type": "MongoDB", "connectionDetails": "mongodb://localhost:27017" }}| Section | Description |
|---|---|
| Root properties | Ports and health check endpoint |
| Features | API, Workbench, and OAuth authority toggles |
| Storage | Storage provider configuration |
| Compliance | Dedicated storage for compliance encryption keys |
| Clustering | Orleans clustering provider, cluster identity, and ports |
| Observers | Retry and timeout settings |
| Read models | Replay retention for replay-generated read model versions |
| Events | Event queue configuration |
| Jobs | Parallel job step throttling |
| Authentication | External authority, default admin, and initial admin user bootstrap |
| TLS | TLS certificate configuration for the Chronicle port |
| Encryption certificate | Certificate protecting OAuth keys, webhook credentials, and Data Protection keys |
| Health | Dedicated port for the health endpoint |
| Identity Provider Certificate | Dedicated certificate configuration for internal OAuth authority |
| Clients | Bootstrap client registrations created on startup |
Topics
Section titled “Topics”- Configuration File - Structure and location of
chronicle.json. - Root Properties - Ports and health check settings.
- Features - Toggle API, Workbench, and OAuth authority.
- Storage - Configure the storage provider and connection details.
- Compliance Storage - Give compliance encryption keys their own storage backend.
- Clustering - Orleans clustering provider, cluster identity, and silo/gateway ports.
- Observers - Retry and timeout settings for observer subscriptions.
- Read Models - Configure replay retention for replay-generated read model versions.
- Events - Configure event queues.
- Authentication - External authority and default admin settings.
- TLS - Configure the TLS certificate for the Chronicle port.
- Data Protection Key Encryption - Configure the encryption certificate, required in production.
- Health Endpoint - Expose the health endpoint on a dedicated port with optional TLS.
- Identity Provider Certificate - Configure internal OAuth authority certificates.
- Client Bootstrap - Register client applications on startup with hashed secrets.
- Environment Variables - Configure with
Cratis__Chronicle__settings. - Open Telemetry - Export metrics, traces, and logs via OTLP.
- Docker Configuration - Configure Chronicle in Docker.
- Configuration Precedence - How sources override each other.
- Best Practices - Recommended configuration guidelines.
- Port Reference - Ports exposed by Chronicle Server.
- Job Throttling - Limit parallel job steps to control CPU usage.