diff --git a/cmd/revid-cli/main.go b/cmd/revid-cli/main.go index bced0a4f..db6e17ec 100644 --- a/cmd/revid-cli/main.go +++ b/cmd/revid-cli/main.go @@ -32,7 +32,9 @@ package main import ( "flag" + "io" "os" + "path/filepath" "runtime/pprof" "strconv" "strings" @@ -44,10 +46,11 @@ import ( "bitbucket.org/ausocean/av/device/raspivid" "bitbucket.org/ausocean/av/revid" "bitbucket.org/ausocean/av/revid/config" + "bitbucket.org/ausocean/iot/pi/netlogger" "bitbucket.org/ausocean/iot/pi/netsender" "bitbucket.org/ausocean/iot/pi/sds" - "bitbucket.org/ausocean/iot/pi/smartlogger" "bitbucket.org/ausocean/utils/logger" + "gopkg.in/natefinch/lumberjack.v2" ) // Revid modes @@ -72,7 +75,10 @@ const ( var canProfile = true // The logger that will be used throughout. -var log *logger.Logger +var ( + netLog *netlogger.Logger + log *logger.Logger +) const ( metaPreambleKey = "copyright" @@ -160,7 +166,20 @@ func handleFlags() config.Config { cfg.LogLevel = defaultLogVerbosity } - log = logger.New(cfg.LogLevel, &smartlogger.New(*logPathPtr).LogRoller, true) + netLog = netlogger.New() + log = logger.New( + cfg.LogLevel, + io.MultiWriter( + &lumberjack.Logger{ + Filename: filepath.Join(*logPathPtr, "netsender.log"), + MaxSize: 500, // MB + MaxBackups: 10, + MaxAge: 28, // days + }, + netLog, + ), + true, + ) cfg.Logger = log @@ -296,6 +315,11 @@ func run(cfg config.Config) { continue } + err = netLog.Send(ns) + if err != nil { + log.Log(logger.Warning, pkg+"Logs could not be sent", "error", err.Error()) + } + // If var sum hasn't changed we continue. var vars map[string]string newVs := ns.VarSum() diff --git a/go.mod b/go.mod index 632c0ebb..2ed4c734 100644 --- a/go.mod +++ b/go.mod @@ -3,7 +3,7 @@ module bitbucket.org/ausocean/av go 1.13 require ( - bitbucket.org/ausocean/iot v1.2.11 + bitbucket.org/ausocean/iot v1.2.13 bitbucket.org/ausocean/utils v1.2.12 github.com/Comcast/gots v0.0.0-20190305015453-8d56e473f0f7 github.com/go-audio/audio v0.0.0-20181013203223-7b2a6ca21480 @@ -12,4 +12,5 @@ require ( github.com/pkg/errors v0.8.1 github.com/yobert/alsa v0.0.0-20180630182551-d38d89fa843e gocv.io/x/gocv v0.21.0 + gopkg.in/natefinch/lumberjack.v2 v2.0.0 ) diff --git a/go.sum b/go.sum index b0fee827..ef1fb9ff 100644 --- a/go.sum +++ b/go.sum @@ -4,6 +4,10 @@ bitbucket.org/ausocean/iot v1.2.10 h1:TTu+ykH5gQA8wU/pN0aS55ySQ/XcGxV4s4LKx3Wye5 bitbucket.org/ausocean/iot v1.2.10/go.mod h1:Q5FwaOKnCty3dVeVtki6DLwYa5vhNpOaeu1lwLyPCg8= bitbucket.org/ausocean/iot v1.2.11 h1:MwYQK1F2ESA5jPVSCB0lBUN8HBiNDHGkh/OMGJKw8Oc= bitbucket.org/ausocean/iot v1.2.11/go.mod h1:Q5FwaOKnCty3dVeVtki6DLwYa5vhNpOaeu1lwLyPCg8= +bitbucket.org/ausocean/iot v1.2.12 h1:Ixf0CTmWOMJVrJ6IYMEluTrCLlu9LM1eNSBZ+ZUnDmU= +bitbucket.org/ausocean/iot v1.2.12/go.mod h1:Q5FwaOKnCty3dVeVtki6DLwYa5vhNpOaeu1lwLyPCg8= +bitbucket.org/ausocean/iot v1.2.13 h1:E9LcW3HYqRgJqxNhPJUCfVRvoV2IAU4B7JSDNxB/x2k= +bitbucket.org/ausocean/iot v1.2.13/go.mod h1:Q5FwaOKnCty3dVeVtki6DLwYa5vhNpOaeu1lwLyPCg8= bitbucket.org/ausocean/utils v1.2.11 h1:zA0FOaPjN960ryp8PKCkV5y50uWBYrIxCVnXjwbvPqg= bitbucket.org/ausocean/utils v1.2.11/go.mod h1:uXzX9z3PLemyURTMWRhVI8uLhPX4uuvaaO85v2hcob8= bitbucket.org/ausocean/utils v1.2.12 h1:VnskjWTDM475TnQRhBQE0cNp9D6Y6OELrd4UkD2VVIQ=