aboutsummaryrefslogtreecommitdiffstats
path: root/internal/trace/trace.go
diff options
context:
space:
mode:
authorAyman Bagabas <ayman.bagabas@gmail.com>2023-11-16 11:15:10 -0500
committerAyman Bagabas <ayman.bagabas@gmail.com>2023-11-16 11:15:10 -0500
commitc62aa3e780da6f85f6e1ddd7628ab30ec9d92b53 (patch)
treefefa6785e1acd7ed855afb8dc04881efd569a1a1 /internal/trace/trace.go
parent63b586b9559508baf7442c39db3327c91d37486c (diff)
downloadgo-git-c62aa3e780da6f85f6e1ddd7628ab30ec9d92b53.tar.gz
utils: move trace to utils
Without exposing `trace`, we can't set a target to enable tracing from out of go-git. Fixes: https://github.com/go-git/go-git/pull/916
Diffstat (limited to 'internal/trace/trace.go')
-rw-r--r--internal/trace/trace.go55
1 files changed, 0 insertions, 55 deletions
diff --git a/internal/trace/trace.go b/internal/trace/trace.go
deleted file mode 100644
index 3e15c5b..0000000
--- a/internal/trace/trace.go
+++ /dev/null
@@ -1,55 +0,0 @@
-package trace
-
-import (
- "fmt"
- "log"
- "os"
- "sync/atomic"
-)
-
-var (
- // logger is the logger to use for tracing.
- logger = newLogger()
-
- // current is the targets that are enabled for tracing.
- current atomic.Int32
-)
-
-func newLogger() *log.Logger {
- return log.New(os.Stderr, "", log.Ltime|log.Lmicroseconds|log.Lshortfile)
-}
-
-// Target is a tracing target.
-type Target int32
-
-const (
- // General traces general operations.
- General Target = 1 << iota
-
- // Packet traces git packets.
- Packet
-)
-
-// SetTarget sets the tracing targets.
-func SetTarget(target Target) {
- current.Store(int32(target))
-}
-
-// SetLogger sets the logger to use for tracing.
-func SetLogger(l *log.Logger) {
- logger = l
-}
-
-// Print prints the given message only if the target is enabled.
-func (t Target) Print(args ...interface{}) {
- if int32(t)&current.Load() != 0 {
- logger.Output(2, fmt.Sprint(args...)) // nolint: errcheck
- }
-}
-
-// Printf prints the given message only if the target is enabled.
-func (t Target) Printf(format string, args ...interface{}) {
- if int32(t)&current.Load() != 0 {
- logger.Output(2, fmt.Sprintf(format, args...)) // nolint: errcheck
- }
-}