Skip to content

Commit c4dae9f

Browse files
committed
chore: move logging about initial storage class distribution earlier
1 parent cc53fe8 commit c4dae9f

File tree

1 file changed

+35
-33
lines changed

1 file changed

+35
-33
lines changed

scripts/change_storage_tier.py

Lines changed: 35 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -289,6 +289,41 @@ def process_stac_item(
289289
for _, current_class in objects:
290290
storage_class_counts[current_class] = storage_class_counts.get(current_class, 0) + 1
291291

292+
# Show initial distribution before processing
293+
if storage_class_counts:
294+
logger.info("")
295+
logger.info("Initial storage class distribution (before changes):")
296+
total = sum(storage_class_counts.values())
297+
for sc in sorted(storage_class_counts.keys()):
298+
count = storage_class_counts[sc]
299+
percentage = (count / total * 100) if total > 0 else 0
300+
logger.info(f" {sc}: {count} objects ({percentage:.1f}%)")
301+
302+
# Show expected distribution after changes
303+
if not dry_run and len(objects_to_change) > 0:
304+
logger.info("")
305+
logger.info("Expected storage class distribution (after changes):")
306+
expected_counts = storage_class_counts.copy()
307+
# Remove changed objects from their old classes
308+
for _, old_class in objects_to_change:
309+
expected_counts[old_class] = expected_counts.get(old_class, 0) - 1
310+
if expected_counts[old_class] == 0:
311+
del expected_counts[old_class]
312+
# Add changed objects to target class
313+
expected_counts[storage_class] = expected_counts.get(storage_class, 0) + len(
314+
objects_to_change
315+
)
316+
317+
expected_total = sum(expected_counts.values())
318+
for sc in sorted(expected_counts.keys()):
319+
count = expected_counts[sc]
320+
percentage = (count / expected_total * 100) if expected_total > 0 else 0
321+
logger.info(f" {sc}: {count} objects ({percentage:.1f}%)")
322+
323+
if dry_run:
324+
logger.info(" (DRY RUN)")
325+
logger.info("")
326+
292327
logger.info(f"Processing {total_objects} objects...")
293328
logger.info(
294329
f" {len(objects_already_correct)} already have target storage class {storage_class}"
@@ -327,39 +362,6 @@ def process_stac_item(
327362
logger.info(f" Succeeded: {stats['succeeded']}")
328363
logger.info(f" Failed: {stats['failed']}")
329364

330-
if storage_class_counts:
331-
logger.info("")
332-
logger.info("Initial storage class distribution (before changes):")
333-
total = sum(storage_class_counts.values())
334-
for sc in sorted(storage_class_counts.keys()):
335-
count = storage_class_counts[sc]
336-
percentage = (count / total * 100) if total > 0 else 0
337-
logger.info(f" {sc}: {count} objects ({percentage:.1f}%)")
338-
339-
# Show expected distribution after changes
340-
if not dry_run and len(objects_to_change) > 0:
341-
logger.info("")
342-
logger.info("Expected storage class distribution (after changes):")
343-
expected_counts = storage_class_counts.copy()
344-
# Remove changed objects from their old classes
345-
for _, old_class in objects_to_change:
346-
expected_counts[old_class] = expected_counts.get(old_class, 0) - 1
347-
if expected_counts[old_class] == 0:
348-
del expected_counts[old_class]
349-
# Add changed objects to target class
350-
expected_counts[storage_class] = expected_counts.get(storage_class, 0) + len(
351-
objects_to_change
352-
)
353-
354-
expected_total = sum(expected_counts.values())
355-
for sc in sorted(expected_counts.keys()):
356-
count = expected_counts[sc]
357-
percentage = (count / expected_total * 100) if expected_total > 0 else 0
358-
logger.info(f" {sc}: {count} objects ({percentage:.1f}%)")
359-
360-
if dry_run:
361-
logger.info(" (DRY RUN)")
362-
363365
return stats
364366

365367

0 commit comments

Comments
 (0)