aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/ringlogger/global.go
diff options
context:
space:
mode:
authorJason A. Donenfeld <Jason@zx2c4.com>2019-03-20 02:18:05 -0600
committerJason A. Donenfeld <Jason@zx2c4.com>2019-03-21 03:24:11 -0600
commit4e58a239c084d673b1376167318ede11eded15c2 (patch)
tree036751633485acaa313a5b4c758d06f276202e7f /ringlogger/global.go
parentconf: expose configuration root directory (diff)
downloadwireguard-windows-4e58a239c084d673b1376167318ede11eded15c2.tar.xz
wireguard-windows-4e58a239c084d673b1376167318ede11eded15c2.zip
ringlogger: introduce basic file ring logging
Diffstat (limited to 'ringlogger/global.go')
-rw-r--r--ringlogger/global.go31
1 files changed, 31 insertions, 0 deletions
diff --git a/ringlogger/global.go b/ringlogger/global.go
new file mode 100644
index 00000000..da79b6de
--- /dev/null
+++ b/ringlogger/global.go
@@ -0,0 +1,31 @@
+/* SPDX-License-Identifier: MIT
+ *
+ * Copyright (C) 2019 WireGuard LLC. All Rights Reserved.
+ */
+
+package ringlogger
+
+import (
+ "golang.zx2c4.com/wireguard/windows/conf"
+ "log"
+ "path"
+)
+
+var Global *Ringlogger
+
+func InitGlobalLogger(tag string) error {
+ if Global != nil {
+ return nil
+ }
+ root, err := conf.RootDirectory()
+ if err != nil {
+ return err
+ }
+ Global, err = NewRinglogger(path.Join(root, "log.bin"), tag)
+ if err != nil {
+ return err
+ }
+ log.SetOutput(Global)
+ log.SetFlags(0)
+ return nil
+}