feat(admin): export full cluster volume list as JSON (#9876)

Adds an "Export All (JSON)" button on the Cluster Volumes page that pulls
the whole cluster's volume list from the master in one call, a superset of
volume.list. Beyond the table columns it carries garbage and fullness
ratios, modified time, compact revision, remote tiering keys, per-disk
capacity counts, EC shard sizes with file/delete counts, and a cluster-wide
duplicate-volume-id scan. Honors the active collection filter. The existing
per-page CSV export stays as "Export Page".
This commit is contained in:
Chris Lu authored and GitHub committed 2026-06-08 15:01:02 -07:00
1 parent ed470dccb1
commit 3fadbef3eb
7 files changed
+561 -47

No files matched your search

+12
View File
@@ -736,6 +736,18 @@ function exportVolumes() {
downloadCSV(csv, 'seaweedfs-volumes.csv');
}
// Export the full cluster volume list (all volumes + EC shards, more fields than
// the table) as a JSON report served by the admin API. Carries the active
// collection filter from the page URL.
function exportVolumeList() {
let url = basePath('/api/volumes/export');
const collection = new URLSearchParams(window.location.search).get('collection');
if (collection) {
url += '?collection=' + encodeURIComponent(collection);
}
window.open(url, '_blank');
}
// Export collections data as CSV
function exportCollections() {
const table = document.getElementById('collectionsTable');