aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fischer@muhq.space>2025-08-19 19:19:06 +0200
committerFlorian Fischer <florian.fischer@muhq.space>2025-08-20 15:57:41 +0200
commitbc1b8ff624ad4cbc578f5c0d4b771048fdbe0b2d (patch)
tree7ce6004285ff8cd37af73a1cab3f1bf007b458dc
parentd33fc6059b2c065a096ced4021f809d456385d8b (diff)
downloadmuhqs-game-bc1b8ff624ad4cbc578f5c0d4b771048fdbe0b2d.tar.gz
muhqs-game-bc1b8ff624ad4cbc578f5c0d4b771048fdbe0b2d.zip
retrieve loglevel from url query in wasm
-rw-r--r--go/log/log.go13
-rw-r--r--go/log/log_generic.go20
-rw-r--r--go/log/log_wasm.go21
3 files changed, 41 insertions, 13 deletions
diff --git a/go/log/log.go b/go/log/log.go
index b9262675..040eaef8 100644
--- a/go/log/log.go
+++ b/go/log/log.go
@@ -5,8 +5,6 @@ import (
"fmt"
"log"
"log/slog"
- "os"
- "strconv"
)
var GameLogLevel slog.Level = 99
@@ -21,17 +19,6 @@ func RegisterGameRecordHandler(handler func(any)) {
handleGameRecord = handler
}
-func init() {
- logLevel := 0
- if logLevelVar, found := os.LookupEnv("LOGLEVEL"); found {
- if envLogLevel, err := strconv.Atoi(logLevelVar); err == nil {
- logLevel = envLogLevel
- }
- }
- Logger = slog.New(NewGameLogHandler([]string{}, &slog.HandlerOptions{Level: slog.Level(logLevel)}))
- slog.SetDefault(Logger)
-}
-
// Configure controls the logging behavior of the default logger.
func Configure(files []string, opts *slog.HandlerOptions) {
Logger = slog.New(NewGameLogHandler(files, opts))
diff --git a/go/log/log_generic.go b/go/log/log_generic.go
new file mode 100644
index 00000000..db4561b9
--- /dev/null
+++ b/go/log/log_generic.go
@@ -0,0 +1,20 @@
+//go:build !wasm
+
+package log
+
+import (
+ "log/slog"
+ "os"
+ "strconv"
+)
+
+func init() {
+ logLevel := 0
+ if logLevelVar, found := os.LookupEnv("LOGLEVEL"); found {
+ if envLogLevel, err := strconv.Atoi(logLevelVar); err == nil {
+ logLevel = envLogLevel
+ }
+ }
+ Logger = slog.New(NewGameLogHandler([]string{}, &slog.HandlerOptions{Level: slog.Level(logLevel)}))
+ slog.SetDefault(Logger)
+}
diff --git a/go/log/log_wasm.go b/go/log/log_wasm.go
new file mode 100644
index 00000000..ad870432
--- /dev/null
+++ b/go/log/log_wasm.go
@@ -0,0 +1,21 @@
+package log
+
+import (
+ "log/slog"
+ "net/url"
+ "strconv"
+ "syscall/js"
+)
+
+func init() {
+ logLevel := 0
+ search := js.Global().Get("window").Get("location").Get("search").String()
+ params, _ := url.ParseQuery(search)
+ if logLevelVar := params.Get("loglevel"); logLevelVar != "" {
+ if envLogLevel, err := strconv.Atoi(logLevelVar); err == nil {
+ logLevel = envLogLevel
+ }
+ }
+ Logger = slog.New(NewGameLogHandler([]string{}, &slog.HandlerOptions{Level: slog.Level(logLevel)}))
+ slog.SetDefault(Logger)
+}