From f8115900215661e7284a51a3c23dda42a7e6b3e3 Mon Sep 17 00:00:00 2001 From: WithoutPants <53250216+WithoutPants@users.noreply.github.com> Date: Thu, 27 Nov 2025 14:04:06 +1100 Subject: [PATCH] Debug log stderr when thumbnail generation fails --- internal/manager/task_generate_image_thumbnail.go | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/internal/manager/task_generate_image_thumbnail.go b/internal/manager/task_generate_image_thumbnail.go index 2d32e2d60..14518d2bb 100644 --- a/internal/manager/task_generate_image_thumbnail.go +++ b/internal/manager/task_generate_image_thumbnail.go @@ -4,6 +4,7 @@ import ( "context" "errors" "fmt" + "os/exec" "github.com/stashapp/stash/pkg/fsutil" "github.com/stashapp/stash/pkg/image" @@ -20,6 +21,13 @@ func (t *GenerateImageThumbnailTask) GetDescription() string { return fmt.Sprintf("Generating Thumbnail for image %s", t.Image.Path) } +func (t *GenerateImageThumbnailTask) logStderr(err error) { + var exitErr *exec.ExitError + if errors.As(err, &exitErr) { + logger.Debugf("[generator] error output: %s", exitErr.Stderr) + } +} + func (t *GenerateImageThumbnailTask) Start(ctx context.Context) { if !t.required() { return @@ -46,14 +54,15 @@ func (t *GenerateImageThumbnailTask) Start(ctx context.Context) { if err != nil { // don't log for animated images if !errors.Is(err, image.ErrNotSupportedForThumbnail) { - logger.Errorf("[generator] getting thumbnail for image %s: %w", path, err) + logger.Errorf("[generator] getting thumbnail for image %s: %s", path, err.Error()) + t.logStderr(err) } return } err = fsutil.WriteFile(thumbPath, data) if err != nil { - logger.Errorf("[generator] writing thumbnail for image %s: %w", path, err) + logger.Errorf("[generator] writing thumbnail for image %s: %s", path, err.Error()) return } }