query history

This commit is contained in:
Jan Prochazka
2021-06-03 15:42:39 +02:00
parent 2a47f60987
commit f6c8588573
3 changed files with 107 additions and 10 deletions

View File

@@ -4,22 +4,29 @@ const path = require('path');
const { datadir } = require('../utility/directories');
const _ = require('lodash');
const { filterName } = require('dbgate-tools');
const socket = require('../utility/socket');
function readCore(reader, skip, limit, filter) {
return new Promise(resolve => {
return new Promise((resolve, reject) => {
const res = [];
let readed = 0;
reader.on('data', line => {
const json = JSON.parse(line);
if (filterName(filter, json.sql)) {
if (!skip || readed >= skip) {
res.push(json);
}
readed++;
if (limit && readed > (skip || 0) + limit) {
reader.destroy();
resolve(res);
if (!line && !line.trim()) return;
try {
const json = JSON.parse(line);
if (filterName(filter, json.sql)) {
if (!skip || readed >= skip) {
res.push(json);
}
readed++;
if (limit && readed > (skip || 0) + limit) {
reader.destroy();
resolve(res);
}
}
} catch (err) {
reader.destroy();
reject(err);
}
});
reader.on('end', () => resolve(res));
@@ -41,5 +48,7 @@ module.exports = {
async write({ data }) {
const fileName = path.join(datadir(), 'query-history.jsonl');
await fs.appendFile(fileName, JSON.stringify(data) + '\n');
socket.emitChanged('query-history-changed');
return 'OK';
},
};