diff --git a/static/web_panel/pages/logs.js b/static/web_panel/pages/logs.js index 743dfe6..df58353 100644 --- a/static/web_panel/pages/logs.js +++ b/static/web_panel/pages/logs.js @@ -1,20 +1,21 @@ window.LogsModule = { ws: null, init: () => { - const box = document.getElementById('log-box'); + const box = document.getElementById("log-box"); + const base = window.location.pathname.split("/").slice(0,2).join("/"); const connect = () => { - window.LogsModule.ws = new WebSocket(`ws://${location.host}${window.location.pathname.replace(/\/$/,'')}/api/logs/ws`); - window.LogsModule.ws.onopen = () => box.innerHTML += `
🟢 Connected
`; + window.LogsModule.ws = new WebSocket("ws://"+location.host+base+"/api/logs/ws"); + window.LogsModule.ws.onopen = () => box.innerHTML += "
Connected
"; window.LogsModule.ws.onmessage = e => { try { const d = JSON.parse(e.data); - if(d.type === 'log') { - const cls = d.level === 'ERROR' ? 'log-ERROR' : d.level === 'WARNING' ? 'log-WARNING' : 'log-INFO'; - const t = d.timestamp ? new Date(d.timestamp*1000).toLocaleTimeString() : '--'; - box.innerHTML += `
${t}[${d.level}] ${d.message}
`; + if(d.type === "log") { + const cls = d.level === "ERROR" ? "log-ERROR" : d.level === "WARNING" ? "log-WARNING" : "log-INFO"; + const t = d.timestamp ? new Date(d.timestamp*1000).toLocaleTimeString() : "--"; + box.innerHTML += "
"+t+"["+d.level+"] "+d.message+"
"; box.scrollTop = box.scrollHeight; } - } catch(e){} + }catch(e){} }; window.LogsModule.ws.onclose = setTimeout(connect, 3000); };