aboutsummaryrefslogtreecommitdiff
path: root/source/client/logger.ts
diff options
context:
space:
mode:
authormetamuffin <metamuffin@yandex.com>2022-01-24 20:01:23 +0100
committermetamuffin <metamuffin@yandex.com>2022-01-24 20:01:23 +0100
commita22bdc3821bd53d8e3b198423db3f8d7e8e579f6 (patch)
tree59ea451651bfcc95cf3956b4ffb5dc8c03c7b5a0 /source/client/logger.ts
parent8cbe8e1a92fbf6531ff477b5dff11185c53fd12d (diff)
downloadkeks-meet-a22bdc3821bd53d8e3b198423db3f8d7e8e579f6.tar
keks-meet-a22bdc3821bd53d8e3b198423db3f8d7e8e579f6.tar.bz2
keks-meet-a22bdc3821bd53d8e3b198423db3f8d7e8e579f6.tar.zst
really fancy loggin + fonts on my own "cdn"
Diffstat (limited to 'source/client/logger.ts')
-rw-r--r--source/client/logger.ts38
1 files changed, 31 insertions, 7 deletions
diff --git a/source/client/logger.ts b/source/client/logger.ts
index f4f4727..1f7139c 100644
--- a/source/client/logger.ts
+++ b/source/client/logger.ts
@@ -1,13 +1,16 @@
/// <reference lib="dom" />
-export type LogTag = "webrtc" | "ws" | "media" | "*" | "misc"
-const log_tag_color: { [key in LogTag]: string } = {
- "*": "#FF0000",
- webrtc: "#FF00FF",
- media: "#FFFF00",
- ws: "#00FFFF",
- misc: "#2222FF",
+const log_tag_color = {
+ "*": "#FF4444",
+ webrtc: "#FF44FF",
+ media: "#FFFF44",
+ ws: "#44FFFF",
+ rnnoise: "#2222FF",
+ usermodel: "#44FF44",
}
+export type LogTag = keyof typeof log_tag_color
+
+let logger_container: HTMLDivElement
// TODO maybe log time aswell
// deno-lint-ignore no-explicit-any
@@ -17,4 +20,25 @@ export function log(tag: LogTag, message: string, ...data: any[]) {
if (e instanceof MediaStreamTrack) data[i] = `(${e.kind}) ${e.id}`
}
console.log(`%c[${tag}] ${message}`, "color:" + log_tag_color[tag], ...data);
+
+ if (logger_container) {
+ const e = document.createElement("p")
+ e.classList.add("logger-line")
+ e.textContent = `[${tag}] ${message}`
+ e.style.color = log_tag_color[tag]
+ logger_container.append(e)
+ setTimeout(() => {
+ e.remove()
+ }, 6000)
+ }
}
+
+globalThis.addEventListener("load", () => {
+ const d = document.createElement("div")
+ d.classList.add("logger-container")
+ document.body.append(d)
+ logger_container = d
+
+ // clear the console every hour so logs dont accumulate
+ setInterval(() => console.clear(), 1000 * 60 * 60)
+})