Description
Starting with Chronicle version 2025.08.0, memory limits are automatically set for installations using systemd. The default memory limits are:
- Chronicle Agent: 768MB.
- Chronicle Server: 3GB.
These limits are managed through systemd's MemoryHigh and MemoryMax settings, which control how the system handles memory pressure for Chronicle processes.
Memory Management Details
The systemd memory management system uses two key settings:
- MemoryHigh: This is a soft limit that, when exceeded, causes the system to aggressively recover memory through garbage collection, but allows the process to continue running.
- MemoryMax: This is a hard limit. If reached, the process will be terminated by the OOM killer. However, with the default systemd configuration (Restart=always), the service will automatically restart.
Configuration
To customize memory settings, modify the systemd unit override files:
- For Chronicle Server: /etc/systemd/system/chronicle.service.d/override.conf
- For Chronicle Agent: /etc/systemd/system/chronicle-agent.service.d/override.conf
You can edit these files using:
sudo systemctl edit chroniclesudo systemctl edit chronicle-agent
Monitoring
To monitor Chronicle's memory usage and receive alerts:
- Both Chronicle Server and Agent expose Prometheus metrics that include memory counters.
- You can configure monitoring tools like Datadog, Grafana, or similar solutions to watch these metrics.
- Set up alerts based on the memory metrics to proactively identify potential issues.
Chronicle metrics documentation can be found at:
- Server metrics: https://docs.posit.co/chronicle/appendix/library/advanced-server.html#metrics
- Agent metrics: https://docs.posit.co/chronicle/appendix/library/advanced-agent.html#metrics
Best Practices
- Monitor both MemoryHigh and MemoryMax thresholds.
- Set up alerts before memory limits are reached to prevent service interruptions.
- Consider your total system memory when setting limits - the defaults may need adjustment for your specific environment.
- Regularly review memory usage patterns to optimize settings.
If you're still having issues, you can reach out to Support by opening a ticket here.