You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Write semicolon-delimited CSV after full scan with ISO 8601 filename Allow selecting output directory via --csv-dir and interactive Options Include namespace path, last snapshot comment, and unique size in GiB Bump version to 2.10.0 and update README/CHANGELOG
Copy file name to clipboardExpand all lines: CHANGELOG.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,5 +1,9 @@
1
1
# 📝 Changelog
2
2
3
+
- 2.10.0
4
+
- Add CSV reporting for full datastore scans (`--all-guests`), written atomically at the end with an ISO 8601 timestamp filename.
5
+
- Include namespace path with VM/CT ID, latest snapshot comment, and unique chunk size in GiB (fixed precision) in the CSV output.
6
+
- Allow selecting the CSV output directory via `--csv-dir` and the interactive Options menu.
3
7
- 2.9.0
4
8
- Add an optional `--show-comments` flag and corresponding interactive option to show a short label derived from the latest PBS snapshot comment next to each VM/CT in the per‑guest summary and interactive search‑path selector (best‑effort, using `proxmox-backup-debug api get /admin/datastore/<DATASTORE>/snapshots`).
5
9
- Simplify the per‑guest overview output by removing the raw byte count from each line and keeping only the human‑readable IEC size (GiB / MiB / TiB) to improve readability.
- Select an existing datastore from the list or enter one manually
77
80
- Navigate the datastore directory structure and choose the search path (or enter it manually)
78
81
- Scan all guests within the current path (datastore root or a selected namespace) to get a per-guest size overview, sorted by usage
79
-
- Open the Options overlay (press `o`) to adjust threads, toggle emoji output, and enable guest comments next to IDs
82
+
- Open the Options overlay (press `o`) to adjust threads, toggle emoji output, enable guest comments next to IDs, and set the CSV output directory for full datastore scans
80
83
- When starting the full datastore scan you will see a warning and must confirm with `Proceed anyway? [y/N]` (English prompt) because the run can take a long time.
81
84
82
85
Interactive controls (TUI):
83
86
- Use Up/Down arrows (or j/k) to move
84
87
- Press Space or Enter to select/confirm
85
88
- Press m to enter a value/path manually
86
-
- Press o to open Options (threads)
89
+
- Press o to open Options (threads, emoji output, comments, CSV path)
87
90
- Press v to show current version
88
91
- Press q (or Esc) to abort
89
92
- Inside the Options overlay, press Space to toggle items (Emoji output shows ✔/✘)
@@ -132,15 +135,29 @@ Notes:
132
135
|--------|-------------|-------------|---------|
133
136
|`--datastore`| Required (script mode) | PBS datastore name that contains the object you want to analyse | — |
134
137
|`--searchpath`| Required (script mode) | Object path inside the datastore (e.g. `/ns/MyNamespace` or `/ns/MyNamespace/vm/100`) | — |
135
-
|`--all-guests`| Optional | Scan the entire datastore (or only the namespace given via `--searchpath`) and print a per-guest size summary (requires `--datastore`) | — |
138
+
|`--all-guests`| Optional | Scan the entire datastore (or only the namespace given via `--searchpath`), print a per-guest size summary, and write a CSV report (requires `--datastore`) | — |
136
139
|`--threads`| Optional | Degree of parallelism for parsing index files and statting chunks |`2 × CPU cores (max 32)`|
137
140
|`--no-emoji`| Optional | Replace emoji icons in CLI output with ASCII labels | Emoji output |
138
141
|`--show-comments`| Optional | Show a short guest label derived from the latest snapshot comment next to each VM/CT in per-guest summaries and interactive path selection | Disabled |
142
+
|`--csv-dir`| Optional | Directory where the CSV report for `--all-guests` is written | Current working directory |
139
143
|`--version`| Optional | Show the script version and exit | — |
140
144
|`--update`| Optional | Check for new releases and offer self-update, then exit | — |
141
145
142
146
---
143
147
148
+
### CSV output for full datastore scans
149
+
150
+
When running with `--all-guests`, the script writes a CSV report **after** the scan finishes.
151
+
152
+
- File name: ISO 8601 timestamp, e.g. `2025-07-01T12:34:56.csv`
153
+
- Output directory: current working directory by default, or via `--csv-dir` / the Options overlay
- The CSV is written automically at the end so no partial file is left behind on errors
158
+
159
+
---
160
+
144
161
## 🔄 Update (Releases)
145
162
146
163
In the interactive menus, press `v` (Version) to see the current version. While opening this menu, the script checks in the background for a newer release on GitHub. If one is available, you will be offered to update automatically. The script downloads the latest `pbs_chunk_checker.py` and replaces the current file atomically (a `.bak` backup is kept next to it). Restart the script to use the new version.
0 commit comments