diff --git a/open-sse/handlers/chatCore.js b/open-sse/handlers/chatCore.js index 7fe4605f..2bc2a0e1 100644 --- a/open-sse/handlers/chatCore.js +++ b/open-sse/handlers/chatCore.js @@ -115,7 +115,7 @@ export async function handleChatCore({ body, modelInfo, credentials, log, onCred streamController.handleError(error); return createErrorResult(499, "Request aborted"); } - const errMsg = formatProviderError(error, provider, model); + const errMsg = formatProviderError(error, provider, model, 502); console.log(`${COLORS.red}[ERROR] ${errMsg}${COLORS.reset}`); return createErrorResult(502, errMsg); } @@ -205,7 +205,7 @@ export async function handleChatCore({ body, modelInfo, credentials, log, onCred // Check provider response - return error info for fallback handling if (!providerResponse.ok) { const { statusCode, message } = await parseUpstreamError(providerResponse); - const errMsg = formatProviderError(new Error(message), provider, model); + const errMsg = formatProviderError(new Error(message), provider, model, statusCode); console.log(`${COLORS.red}[ERROR] ${errMsg}${COLORS.reset}`); // Log error with full request body for debugging diff --git a/open-sse/utils/error.js b/open-sse/utils/error.js index 17670bbd..75b7f858 100644 --- a/open-sse/utils/error.js +++ b/open-sse/utils/error.js @@ -126,8 +126,11 @@ export function createErrorResult(statusCode, message) { * @param {Error} error - Original error * @param {string} provider - Provider name * @param {string} model - Model name + * @param {number|string} statusCode - HTTP status code or error code * @returns {string} Formatted error message */ -export function formatProviderError(error, provider, model) { - return error.message || "Unknown error"; +export function formatProviderError(error, provider, model, statusCode) { + const code = statusCode || error.code || 'FETCH_FAILED'; + const message = error.message || "Unknown error"; + return `[${code}]: ${message}`; }