From 0762eec5407b30a4ac4235dbdb7eb212e5edc91d Mon Sep 17 00:00:00 2001 From: LittleSheep Date: Wed, 14 Jan 2026 19:02:16 +0800 Subject: [PATCH] :sparkles: File reanalysis progress logging --- .../Storage/FileReanalysisService.cs | 20 ++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/DysonNetwork.Drive/Storage/FileReanalysisService.cs b/DysonNetwork.Drive/Storage/FileReanalysisService.cs index d17c27b0..1d7f829b 100644 --- a/DysonNetwork.Drive/Storage/FileReanalysisService.cs +++ b/DysonNetwork.Drive/Storage/FileReanalysisService.cs @@ -19,6 +19,10 @@ public class FileReanalysisService( { private readonly FileReanalysisOptions _options = options.Value; private readonly HashSet _failedFileIds = []; + private int _totalProcessed = 0; + private int _reanalysisSuccess = 0; + private int _reanalysisFailure = 0; + private int _validationProcessed = 0; private async Task> GetFilesNeedingReanalysisAsync(int limit = 100) { @@ -270,7 +274,15 @@ public class FileReanalysisService( { logger.LogWarning("Failed to reanalyze file {FileId}, skipping for now", file.Id); _failedFileIds.Add(file.Id); + _reanalysisFailure++; } + else + { + _reanalysisSuccess++; + } + _totalProcessed++; + var successRate = (_reanalysisSuccess + _reanalysisFailure) > 0 ? (double)_reanalysisSuccess / (_reanalysisSuccess + _reanalysisFailure) * 100 : 0; + logger.LogInformation("Reanalysis progress: {ReanalysisSuccess} succeeded, {ReanalysisFailure} failed ({SuccessRate:F1}%)", _reanalysisSuccess, _reanalysisFailure, successRate); return; } @@ -283,6 +295,9 @@ public class FileReanalysisService( { var file = compressionFiles[0]; await ValidateCompressionAndThumbnailAsync(file); + _validationProcessed++; + _totalProcessed++; + logger.LogInformation("Validation progress: {ValidationProcessed} processed", _validationProcessed); return; } } @@ -294,6 +309,9 @@ public class FileReanalysisService( { var file = thumbnailFiles[0]; await ValidateCompressionAndThumbnailAsync(file); + _validationProcessed++; + _totalProcessed++; + logger.LogInformation("Validation progress: {ValidationProcessed} processed", _validationProcessed); return; } } @@ -543,4 +561,4 @@ public class FileReanalysisService( return client.Build(); } -} \ No newline at end of file +}