feat: exclude per-site log/ directories from the archive
nginx access/error logs (and any other per-site log/ dir) change on every request, so they showed up as modified in every single backup - pure noise, no recovery value. Exclude any path containing a log/ directory (re:/log/) from borg create. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
+4
-1
@@ -244,7 +244,9 @@ fi
|
||||
# MariaDB stays up throughout: the dump above is already transactionally
|
||||
# consistent, and the container's raw data directory carries a .nobackup
|
||||
# marker (excluded here via --exclude-if-present) so its live files are
|
||||
# never read by borg.
|
||||
# never read by borg. Per-site log/ dirs (nginx access/error logs etc.)
|
||||
# are excluded too - they churn on every request, so backing them up adds
|
||||
# noise and dedup overhead for no recovery value.
|
||||
step "Step 2: Creating archive $ARCHIVE"
|
||||
container_running "$DB_CONTAINER" \
|
||||
|| { log "ERROR: $DB_CONTAINER is not running - refusing to archive"; exit 1; }
|
||||
@@ -257,6 +259,7 @@ run_cmd timeout --signal=INT --kill-after=120s "$CREATE_TIMEOUT" \
|
||||
--exclude-caches \
|
||||
--exclude-if-present .nobackup \
|
||||
--keep-exclude-tags \
|
||||
--exclude 're:/log/' \
|
||||
"::$ARCHIVE" \
|
||||
"$TARGET"
|
||||
|
||||
|
||||
Reference in New Issue
Block a user