From a6342aa35bc325ae297d38966742e5d38a1bb3ff Mon Sep 17 00:00:00 2001 From: Ruben Pollan Date: Thu, 28 Jun 2018 18:59:41 +0200 Subject: [feat] configure logger --- helper/darwin.go | 1 + helper/helper.go | 17 +++++++++++++++++ helper/linux.go | 1 + helper/windows.go | 1 + 4 files changed, 20 insertions(+) diff --git a/helper/darwin.go b/helper/darwin.go index 47214bd..d1d0ab3 100644 --- a/helper/darwin.go +++ b/helper/darwin.go @@ -24,6 +24,7 @@ import ( ) const ( + logPath = "/applications/RiseupVPN.app/Contents/helper.log" openvpnPath = "/Applications/RiseupVPN.app/Contents/Resources/openvpn.leap" ) diff --git a/helper/helper.go b/helper/helper.go index 5419696..1e30f8f 100644 --- a/helper/helper.go +++ b/helper/helper.go @@ -17,8 +17,10 @@ package main import ( "encoding/json" + "io" "log" "net/http" + "os" "os/exec" ) @@ -31,6 +33,13 @@ type openvpnT struct { } func main() { + logger, err := configureLogger() + if err != nil { + log.Println("Can't configure logger: %v", err) + } else { + defer logger.Close() + } + openvpn := openvpnT{nil} firewall := firewallT{} http.HandleFunc("/openvpn/start", openvpn.start) @@ -103,3 +112,11 @@ func getArgs(r *http.Request) ([]string, error) { err := decoder.Decode(&args) return args, err } + +func configureLogger() (io.Closer, error) { + logFile, err := os.OpenFile(logPath, os.O_RDWR|os.O_CREATE|os.O_APPEND, 0666) + if err == nil { + log.SetOutput(io.MultiWriter(logFile, os.Stderr)) + } + return logFile, err +} diff --git a/helper/linux.go b/helper/linux.go index da570c2..5b167fb 100644 --- a/helper/linux.go +++ b/helper/linux.go @@ -24,6 +24,7 @@ import ( ) const ( + logPath = "/var/log/riseupvpn-helper.log" systemOpenvpnPath = "/usr/sbin/openvpn" snapOpenvpnPath = "/snap/bin/riseup-vpn.openvpn" ) diff --git a/helper/windows.go b/helper/windows.go index faab494..a2e538f 100644 --- a/helper/windows.go +++ b/helper/windows.go @@ -24,6 +24,7 @@ import ( ) const ( + logPath = `C:\Program Files\RiseupVPN\helper.log` openvpnPath = `C:\Program Files\RiseupVPN\openvpn.exe` chocoOpenvpnPath = `C:\Program Files\OpenVPN\bin\openvpn.exe` ) -- cgit v1.2.3