From: Chris Duncan Date: Mon, 14 Apr 2025 16:32:52 +0000 (-0700) Subject: Save server logs by day instead of by execution. Display server process ID on every... X-Git-Tag: v4.1.4~1 X-Git-Url: https://zoso.dev/?a=commitdiff_plain;h=b9f1bd524791bd472bf705b26541a0efb10e2e49;p=nano-pow.git Save server logs by day instead of by execution. Display server process ID on every log entry instead of just once when starting server. Adjust log timestamp formatting. --- diff --git a/src/bin/nano-pow.sh b/src/bin/nano-pow.sh index 5fa0d37..cc56e44 100755 --- a/src/bin/nano-pow.sh +++ b/src/bin/nano-pow.sh @@ -10,7 +10,7 @@ NANO_POW_LOGS="$NANO_POW_HOME"/logs; mkdir -p "$NANO_POW_LOGS"; if [ "$1" = '--server' ]; then shift; - node "$SCRIPT_DIR"/server.js > "$NANO_POW_LOGS"/nano-pow-server-$(date -u -Iseconds).log 2>&1 & echo "$!" > "$NANO_POW_HOME"/server.pid; + node "$SCRIPT_DIR"/server.js >> "$NANO_POW_LOGS"/nano-pow-server-$(date -I).log 2>&1 & echo "$!" > "$NANO_POW_HOME"/server.pid; sleep 0.1; if [ "$(ps | grep $(cat $NANO_POW_HOME/server.pid))" = '' ]; then cat $(ls -td "$NANO_POW_LOGS"/* | head -n1); diff --git a/src/bin/server.ts b/src/bin/server.ts index 0a98ed7..7b571ee 100755 --- a/src/bin/server.ts +++ b/src/bin/server.ts @@ -16,7 +16,15 @@ import type { NanoPowOptions, WorkGenerateRequest, WorkGenerateResponse, WorkVal * to only output when debug mode is enabled. */ function log (...args: any[]): void { - if (CONFIG.DEBUG) console.log(new Date(Date.now()).toLocaleString(), 'NanoPow', args) + if (CONFIG.DEBUG) { + const d = new Date(Date.now()) + const opts: Intl.DateTimeFormatOptions = { + hour12: false, + dateStyle: 'medium', + timeStyle: 'medium' + } + console.log(d.toLocaleString(navigator.language, opts), `NanoPow[${process.pid}]:`, args) + } } process.title = 'NanoPow Server' @@ -226,6 +234,7 @@ log('Puppeteer initialized') // Listen on configured port server.listen(CONFIG.PORT, async (): Promise => { const { port } = server.address() as AddressInfo - log(`Server process ${process.pid} listening on port ${port}`) + CONFIG.PORT = port + log(`Server listening on port ${port}`) process.send?.({ type: 'listening', port }) })