diff --git a/packages/api/src/controllers/runners.js b/packages/api/src/controllers/runners.js index 2c723d7df..123280194 100644 --- a/packages/api/src/controllers/runners.js +++ b/packages/api/src/controllers/runners.js @@ -74,7 +74,8 @@ module.exports = { dispatchMessage(runid, message) { if (message) { - if (_.isPlainObject(message)) logger.log(message); + if (_.isPlainObject(message)) + logger.log({ ...message, msg: message.msg || message.message || '', message: undefined }); else logger.info(message); const toEmit = _.isPlainObject(message) diff --git a/packages/web/src/tabs/AppLogTab.svelte b/packages/web/src/tabs/AppLogTab.svelte index f32633fce..90f7c681f 100644 --- a/packages/web/src/tabs/AppLogTab.svelte +++ b/packages/web/src/tabs/AppLogTab.svelte @@ -19,6 +19,11 @@ import { showModal } from '../modals/modalTools'; import ValueLookupModal from '../modals/ValueLookupModal.svelte'; import { createLogCompoudCondition } from 'dbgate-sqltree'; + import { exportQuickExportFile } from '../utility/exportFileTools'; + import ToolStripExportButton, { + createQuickExportHandlerRef, + registerQuickExportHandler, + } from '../buttons/ToolStripExportButton.svelte'; let loadedRows = []; let loadedAll = false; @@ -32,6 +37,8 @@ let domTable; let jslid; + const quickExportHandlerRef = createQuickExportHandlerRef(); + function formatPossibleUuid(value) { const uuidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i; if (_.isString(value) && value.match(uuidRegex)) { @@ -148,6 +155,28 @@ onDestroy(() => { apiOff('applog-event', handleLogMessage); }); + + const quickExportHandler = fmt => async () => { + let usedJslId = jslid; + if (mode === 'recent') { + const resp = await apiCall('files/fill-app-logs', { + dateFrom: startOfDay(new Date()).getTime(), + dateTo: endOfDay(new Date()).getTime(), + }); + usedJslId = resp.jslid; + } + exportQuickExportFile( + 'Log', + { + functionName: 'jslDataReader', + props: { + jslid: usedJslId, + }, + }, + fmt + ); + }; + registerQuickExportHandler(quickExportHandler); @@ -370,6 +399,7 @@ reloadData(); }}>Refresh +