feat(logs): add copy to clipboard button to logs page

includes various other improvements to the logs page
This commit is contained in:
sct
2021-03-19 12:59:23 +00:00
parent 0974a4c971
commit e2b8745fdc
5 changed files with 190 additions and 6 deletions

View File

@@ -5,6 +5,7 @@ export type LogMessage = {
level: string;
label: string;
message: string;
data?: Record<string, unknown>;
};
export interface LogsResultsResponse extends PaginatedResponse {

View File

@@ -271,14 +271,18 @@ settingsRoutes.get(
const timestamp = line.match(new RegExp(/^.{24}/)) || [];
const level = line.match(new RegExp(/\s\[\w+\]/)) || [];
const label = line.match(new RegExp(/[^\s]\[\w+\s*\w*\]/)) || [];
const message = line.match(new RegExp(/:\s.*/)) || [];
const message = line.match(new RegExp(/:\s([^{}]+)({.*})?/)) || [];
if (level.length && filter.includes(level[0].slice(2, -1))) {
logs.push({
timestamp: timestamp[0],
level: level.length ? level[0].slice(2, -1) : '',
label: label.length ? label[0].slice(2, -1) : '',
message: message.length ? message[0].slice(2) : '',
message: message.length && message[1] ? message[1] : '',
data:
message.length && message[2]
? JSON.parse(message[2])
: undefined,
});
}
});