From 7d5b39b29d3b31d71fb2226c588b0ced1f65a99c Mon Sep 17 00:00:00 2001 From: Matt Date: Wed, 4 Jun 2025 17:15:03 +0200 Subject: [PATCH] Add preview URL logging and clean up MinIO verbose logs - Add logging for generated preview URLs with truncated URL for security - Remove verbose logging from MinIO listObjectsV2 operations - Add proper handling for folder prefixes returned by MinIO - Keep only essential error/debug information in file listing --- server/api/files/preview.ts | 6 ++++++ server/utils/minio.ts | 13 +++++++------ 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/server/api/files/preview.ts b/server/api/files/preview.ts index 4d7f68c..1b7d8c5 100644 --- a/server/api/files/preview.ts +++ b/server/api/files/preview.ts @@ -37,6 +37,12 @@ export default defineEventHandler(async (event) => { // Generate presigned URL for preview const url = await getPreviewUrl(fileName, contentType); + console.log('Preview URL generated:', { + fileName, + contentType, + url: url.substring(0, 100) + '...' // Log first 100 chars for security + }); + return { success: true, url, diff --git a/server/utils/minio.ts b/server/utils/minio.ts index 2b7c9d8..fdf1dda 100644 --- a/server/utils/minio.ts +++ b/server/utils/minio.ts @@ -26,16 +26,17 @@ export const listFiles = async (prefix: string = '', recursive: boolean = false) try { const stream = client.listObjectsV2(bucketName, prefix, recursive); - console.log(`Starting listObjectsV2 with prefix: "${prefix}", recursive: ${recursive}`); - stream.on('data', (obj) => { - // Skip objects without a name - if (!obj || typeof obj.name !== 'string') { - console.log('Skipping invalid object:', obj); + // Handle folder prefixes returned by MinIO + if (obj && obj.prefix) { + folders.add(obj.prefix); return; } - console.log(`Object received: "${obj.name}", size: ${obj.size}, etag: ${obj.etag}`); + // Skip objects without a name + if (!obj || typeof obj.name !== 'string') { + return; + } if (!recursive) { if (prefix) {