mirror of
https://github.com/cpvalente/ontime.git
synced 2026-08-29 10:59:07 +00:00
fix: crash-log not written on windows and add log entries to crash report
* fix: crashlog not written on windows * feat: dump last 100 log entries to crash report
This commit is contained in:
committed by
GitHub
parent
75e77de466
commit
680273770c
@@ -53,10 +53,11 @@ class Logger {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
this.addToQueue(log);
|
||||||
try {
|
try {
|
||||||
socket.sendAsJson(MessageTag.Log, log);
|
socket.sendAsJson(MessageTag.Log, log);
|
||||||
} catch (_e) {
|
} catch (_e) {
|
||||||
this.addToQueue(log);
|
/* Nothing to catch */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -117,6 +118,15 @@ class Logger {
|
|||||||
this.escalateErrorFn?.(text, true);
|
this.escalateErrorFn?.(text, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Dumps the last 100 log entries
|
||||||
|
*/
|
||||||
|
dump() {
|
||||||
|
const q = this.queue;
|
||||||
|
this.queue = [];
|
||||||
|
return q;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Shutdown logger
|
* Shutdown logger
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -7,6 +7,7 @@ import { publicDir } from '../setup/index.js';
|
|||||||
|
|
||||||
import { ensureDirectory } from './fileManagement.js';
|
import { ensureDirectory } from './fileManagement.js';
|
||||||
import { getCurrentRundown } from '../api-data/rundown/rundown.dao.js';
|
import { getCurrentRundown } from '../api-data/rundown/rundown.dao.js';
|
||||||
|
import { logger } from '../classes/Logger.js';
|
||||||
/**
|
/**
|
||||||
* Writes a file to the crash report location
|
* Writes a file to the crash report location
|
||||||
* @param fileName
|
* @param fileName
|
||||||
@@ -29,9 +30,10 @@ function writeToFile(fileName: string, content: object) {
|
|||||||
* @param error
|
* @param error
|
||||||
*/
|
*/
|
||||||
export function generateCrashReport(maybeError: unknown) {
|
export function generateCrashReport(maybeError: unknown) {
|
||||||
const timeNow = new Date().toISOString();
|
const timeNow = new Date().toISOString().replaceAll(':', '_');
|
||||||
const runtimeState = getState();
|
const runtimeState = getState();
|
||||||
const currentRundown = getCurrentRundown();
|
const currentRundown = getCurrentRundown();
|
||||||
|
const log = logger.dump();
|
||||||
const error =
|
const error =
|
||||||
maybeError instanceof Error
|
maybeError instanceof Error
|
||||||
? {
|
? {
|
||||||
@@ -44,6 +46,7 @@ export function generateCrashReport(maybeError: unknown) {
|
|||||||
time: timeNow,
|
time: timeNow,
|
||||||
version: ONTIME_VERSION,
|
version: ONTIME_VERSION,
|
||||||
error,
|
error,
|
||||||
|
log: log,
|
||||||
runtimeState,
|
runtimeState,
|
||||||
currentRundown,
|
currentRundown,
|
||||||
};
|
};
|
||||||
|
|||||||
Reference in New Issue
Block a user