diff --git a/main.go b/main.go index 95266e9..998def8 100644 --- a/main.go +++ b/main.go @@ -22,7 +22,10 @@ const ( sentryDsn = "https://c74e811a96e4413a95caaaa5ae05f851@o427061.ingest.sentry.io/5710878" ) -var version string = "dev" +var ( + version string = "dev" + enableCapture bool = true +) func main() { logging.Info.Printf("Start OS-Agent %s", version) @@ -38,6 +41,7 @@ func main() { } defer sentry.Flush(2 * time.Second) + defer sentry.Recover() // Connect DBus conn, err := dbus.SystemBus() @@ -79,6 +83,16 @@ func InitializeDBus(conn *dbus.Conn) { Emit: prop.EmitInvalidates, Callback: nil, }, + "Telemetry": { + Value: enableCapture, + Writable: true, + Emit: prop.EmitTrue, + Callback: func(c *prop.Change) *dbus.Error { + logging.Info.Printf("Telemetry is now %t", c.Value) + enableCapture = c.Value.(bool) + return nil + }, + }, }, } diff --git a/sentry.go b/sentry.go index d9b8ad9..7a9beec 100644 --- a/sentry.go +++ b/sentry.go @@ -3,7 +3,7 @@ package main import "github.com/getsentry/sentry-go" func filterSentry(event *sentry.Event, hint *sentry.EventHint) *sentry.Event { - if version == "dev" { + if version == "dev" || !enableCapture { return nil } return event