diff --git a/lib/server/routes/buckets.js b/lib/server/routes/buckets.js index a0690d79..b6c499ef 100644 --- a/lib/server/routes/buckets.js +++ b/lib/server/routes/buckets.js @@ -1091,6 +1091,7 @@ BucketsRouter.prototype.getFileInfo = async function (req, res, next) { }); }); }; + const driveClient = req.headers['internxt-client']; try { const bucket = await getBucketUnregisteredAsync(req, res); @@ -1133,7 +1134,15 @@ BucketsRouter.prototype.getFileInfo = async function (req, res, next) { return next(err); } - log.error('getFileInfo: Error for file %s: %s. %s', req.params.file, err.message, err.stack); + const errorDetails = { + client: driveClient, + errorMessage: err.message, + errorStack: err.stack, + requestUrl: err?.config?.url, + requestHeaders: err?.config?.headers + }; + + log.error('getFileInfo: Error for file %s: %s. %s, details: %s', req.params.file, err.message, err.stack, JSON.stringify(errorDetails)); return next(new errors.InternalError(err.message)); } @@ -1142,6 +1151,7 @@ BucketsRouter.prototype.getFileInfo = async function (req, res, next) { //eslint-disable-next-line complexity BucketsRouter.prototype.startUpload = async function (req, res, next) { const bucketId = req.params.id; + const driveClient = req.headers['internxt-client']; if (!req.body.uploads) { return next(new errors.BadRequestError('Missing "uploads" field')); @@ -1211,7 +1221,16 @@ BucketsRouter.prototype.startUpload = async function (req, res, next) { return next(new errors.InternalError(err.message)); } - log.error('startUpload: Error for bucket %s: for user: %s %s. %s', bucketId, req.user.uuid, err.message, err.stack); + const errorDetails = { + client: driveClient, + errorMessage: err.message, + errorStack: err.stack, + requestUrl: err?.config?.url, + requestHeaders: err?.config?.headers + }; + + + log.error('startUpload: Error for bucket %s: for user: %s %s. %s, details: %s', bucketId, req.user.uuid, err.message, err.stack, JSON.stringify(errorDetails)); return next(new errors.InternalError()); } @@ -1287,6 +1306,8 @@ BucketsRouter.prototype.finishUpload = async function (req, res, next) { headers: req.headers, errorMessage: err.message, errorStack: err.stack, + requestUrl: err?.config?.url, + requestHeaders: err?.config?.headers }; log.error('finishUpload: Error for bucket %s: for user: %s, details: %s', bucketId, req.user.uuid, JSON.stringify(errorDetails));