Storage poller¶
The Web UI webhook cannot carry storage size or revision counts. The optional storage poller, off by default, fills that gap by running the duplicacy CLI on a schedule:
duplicacy -log list -all→ revision count and latest revision per snapshot idduplicacy -log check -tabular -stats→ total chunk count and total storage size
Enable it with POLLER_ENABLED=true and a POLLER_REPOSITORIES JSON list:
environment:
- POLLER_ENABLED=true
- POLLER_INTERVAL=86400 # once a day
- POLLER_REPOSITORIES=[{"path":"/repos/photos","storage":"offsite","snapshot_id":"photos"}]
volumes:
- /srv/duplicacy/photos:/repos/photos # an initialised duplicacy repository
Security and cost
The poller runs the duplicacy binary against your storage. It needs the binary (bundled in the image),
the storage credentials and an initialised repository inside the exporter container: mount the
repository's .duplicacy directory or pass the credentials in the environment. That is why it is off by
default. duplicacy check lists every chunk, which is slow and can cost money on remote storage, so keep
POLLER_INTERVAL large. The exporter works without the poller; the bundled binary only enables it.
What lives where¶
| You want… | Use |
|---|---|
| Per-run speed, progress, files, uploaded bytes | log_tail or webhook |
| Storage size + revision counts | poller (not in the webhook) |
| Prune completion tracking | log_tail (not in the webhook, not in the poller) |
The storage-size value is approximate: Duplicacy's check prints sizes in a
lossy human format (e.g. 5,120M), which the exporter converts back to bytes.