base: Fix logging of sql parameter errors

master
Jonatan Nilsson 2023-11-30 04:13:08 +00:00
parent bdeeff3794
commit 3a6996bfbb
4 changed files with 11 additions and 4 deletions

View File

@ -33,7 +33,10 @@ export function initPool(core, config) {
if (err.lineNumber && err.procName) {
message = `Error at ${err.procName}:${err.lineNumber} => ${message}`
}
throw new HttpErrorInternal(message, err)
throw new HttpErrorInternal(message, err, !err.lineNumber ? {
name,
params
} : null)
})
},
promises: pool.promises,

View File

@ -1,7 +1,7 @@
import { HttpError } from 'flaska'
export class HttpErrorInternal extends HttpError {
constructor(message, inner) {
constructor(message, inner, extra) {
super(500, message);
Error.captureStackTrace(this, HttpError);
@ -10,5 +10,6 @@ export class HttpErrorInternal extends HttpError {
proto.name = 'HttpErrorInternal';
this.inner = inner
this.extra = extra
}
}

View File

@ -54,6 +54,9 @@ export default class Server {
ctx.log.warn(err.message)
} else {
ctx.log.error(err.inner || err)
if (err.extra) {
ctx.log.error({ extra: err.extra }, 'Database parameters')
}
ctx.status = 500
}
ctx.body = {

View File

@ -23,11 +23,11 @@ export function decode(base64StringUrlSafe) {
export function parseMediaAndBanner(item) {
if (item.banner_path) {
item.banner_path = 'https://cdn.nfp.is' + item.banner_path
item.banner_alt_prefix = 'https://cdn.nfp.is' + item.banner_alt_prefix
item.banner_alt_prefix = 'https://cdn.nfp.is' + (item.banner_alt_prefix || '')
}
if (item.media_path) {
item.media_path = 'https://cdn.nfp.is' + item.media_path
item.media_alt_prefix = 'https://cdn.nfp.is' + item.media_alt_prefix
item.media_alt_prefix = 'https://cdn.nfp.is' + (item.media_alt_prefix || '')
}
}