From 36ae07074d6150ebd47aff9cba379a42cbfd0457 Mon Sep 17 00:00:00 2001 From: "SPRINX0\\prochazka" Date: Mon, 12 May 2025 13:01:53 +0200 Subject: [PATCH] SYNC: View PostgreSQL server output #1108 --- .../dbgate-plugin-postgres/src/backend/drivers.js | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/plugins/dbgate-plugin-postgres/src/backend/drivers.js b/plugins/dbgate-plugin-postgres/src/backend/drivers.js index 3413915b6..282f347dc 100644 --- a/plugins/dbgate-plugin-postgres/src/backend/drivers.js +++ b/plugins/dbgate-plugin-postgres/src/backend/drivers.js @@ -164,6 +164,16 @@ const drivers = driverBases.map(driverBase => ({ return { rows: (res.rows || []).map(row => zipDataRow(row, columns)), columns }; }, stream(dbhan, sql, options) { + const handleNotice = notice => { + const { message, where } = notice; + options.info({ + message, + procedure: where, + time: new Date(), + severity: 'info', + }); + }; + const query = new pg.Query({ text: sql, rowMode: 'array', @@ -171,6 +181,7 @@ const drivers = driverBases.map(driverBase => ({ let wasHeader = false; let columnsToTransform = null; + dbhan.client.on('notice', handleNotice); query.on('row', row => { if (!wasHeader) { @@ -211,6 +222,7 @@ const drivers = driverBases.map(driverBase => ({ wasHeader = true; } + dbhan.client.off('notice', handleNotice); options.done(); }); @@ -228,6 +240,7 @@ const drivers = driverBases.map(driverBase => ({ time: new Date(), severity: 'error', }); + dbhan.client.off('notice', handleNotice); options.done(); });