Add detailed logging for image conversions on cache miss

Log includes:
- file path
- input/output format
- input/output size in bytes
- input/output dimensions
- size ratio (percentage)

Also adds InputWidth, InputHeight, InputFormat to ProcessResult
This commit is contained in:
2026-01-08 10:44:34 -08:00
parent 02de534cc2
commit b233871241
3 changed files with 25 additions and 0 deletions

View File

@@ -162,6 +162,22 @@ func (s *Service) fetchAndProcess(ctx context.Context, req *ImageRequest) (*Imag
return nil, fmt.Errorf("image processing failed: %w", err)
}
// Log conversion details
inputSize := int64(len(sourceData))
outputSize := processResult.ContentLength
sizePercent := float64(outputSize) / float64(inputSize) * 100.0 //nolint:mnd // percentage calculation
s.log.Info("image converted",
"file", req.SourcePath,
"input_format", processResult.InputFormat,
"output_format", req.Format,
"input_bytes", inputSize,
"output_bytes", outputSize,
"input_dimensions", fmt.Sprintf("%dx%d", processResult.InputWidth, processResult.InputHeight),
"output_dimensions", fmt.Sprintf("%dx%d", processResult.Width, processResult.Height),
"size_ratio", fmt.Sprintf("%.1f%%", sizePercent),
)
// Store output content to cache
metaID, err := s.cache.GetSourceMetadataID(ctx, req)
if err != nil {