Security update: Docker images from v0.4.0-rc.1 fix the high-severity FFmpeg MagicYUV decoder vulnerability (CVE-2026-8461). Upgrade instances using older images immediately.View CVE advisory
Security update: v0.4.0-beta.3 fixes a WebDAV request issue that can terminate the server process. Upgrade older instances promptly.View advisory
Logging
[logging]level = "info"format = "text"file = ""enable_rotation = truemax_backups = 5Decide Where Logs Should Go First
Section titled “Decide Where Logs Should Go First”| Deployment Method | Recommended Approach |
|---|---|
| Docker | Do not write files. Output directly to stdout and let the container logging system collect it. |
| systemd | Do not write files. Let journald handle logs. |
| Bare-metal single process | Write to a dedicated file and enable rotation. |
Options
Section titled “Options”| Option | Default | Purpose |
|---|---|---|
level | "info" | trace / debug / info / warn / error |
format | "text" | text or json |
file | "" | Log file path. Empty means output to stdout. |
enable_rotation | true | Whether to rotate daily. Applies only when file is not empty. |
max_backups | 5 | Number of historical log files to keep |
How to Choose a Format
Section titled “How to Choose a Format”- Local troubleshooting -
text, easier to read by eye - Centralized logging systems such as Loki, ELK, or a custom collector -
json, so fields are structured directly
Which Takes Priority: RUST_LOG or the Config File?
Section titled “Which Takes Priority: RUST_LOG or the Config File?”During logging initialization, AsterDrive reads RUST_LOG first and falls back to logging.level only when RUST_LOG is not set.
For temporary log-level changes, RUST_LOG is the easiest option:
RUST_LOG=debugYou can also override it with an ASTER__ environment variable:
ASTER__LOGGING__LEVEL=debugProduction Example
Section titled “Production Example”[logging]level = "info"format = "json"file = "/var/log/asterdrive.log"enable_rotation = truemax_backups = 7