Backup & Retention Strategy
AppProfileSafe generates several types of persistent data: export backups, run reports, compliance reports, audit logs, health snapshots, and application logs. Each has its own retention mechanism. This page provides guidance for managing storage growth over time.
Retention Settings
Retention periods are configured in settings.xml:
| Setting | Section | Default | Applies to |
|---|---|---|---|
Audit.RetentionDays |
<Audit> |
365 days | Audit log CSV files (audit_YYYY-MM.csv) and detail JSON files |
Reporting.RetentionDays |
<Reporting> |
365 days | Run reports, compliance reports, preflight reports in the report folder |
Health.RetentionDays |
<Health> |
30 days | Health check snapshots (health_*.json) in the report folder |
Application log rotation is handled separately by size-based rotation (see Logging & Diagnostics), configured via MaxLogSizeBytes (default: 10 MB) and MaxLogFiles (default: 10).
Export Data
Export backups (the manifest XML and the accompanying data folder) are not managed by AppProfileSafe's retention system. They persist indefinitely until manually deleted or managed by external processes. For environments running daily or weekly exports:
- Versioned folders — Include a timestamp in the manifest path (e.g.
\\server\share\%USERNAME%\2026-02-14\Manifest.xml) to keep multiple backups. - External cleanup — Use a scheduled script to delete exports older than your desired retention period.
- Disk monitoring — Monitor the export share for disk space. The DiskSpace health check only monitors the local drive.
Compliance Considerations
For regulated environments (GDPR, ISO 27001, SOC 2, HIPAA), consider:
- Audit log retention — Set
Audit.RetentionDaysto meet your regulatory minimum. Audit logs are the primary compliance artifact and should be retained at least as long as your retention policy requires. - Archival — When audit files exceed the retention period, they can be archived rather than deleted. The audit retention service preserves hash chain continuity by recording the last entry's hash in the current file.
- Compliance reports — Generate compliance reports on a regular schedule (monthly or quarterly) and archive them with your other compliance documentation.
Storage Sizing Guidance
| Data type | Typical size | Growth pattern |
|---|---|---|
| Application log | Up to MaxLogSizeBytes × MaxLogFiles (default: 100 MB max) | Bounded by rotation |
| Audit log | ~1 KB per entry; ~100 KB–1 MB per month (depends on operation volume) | Linear, bounded by retention |
| Run reports | 10 KB–1 MB per report (depends on step count) | One per export/import operation |
| Compliance reports | 50 KB–5 MB per report (depends on audit entry count) | One per generation (on demand) |
| Health snapshots | ~2–5 KB each | One per health check run |
| Export data | Varies widely (MB to GB depending on applications) | One per export, not auto-cleaned |