diff options
author | Ayman Bagabas <ayman.bagabas@gmail.com> | 2023-11-16 11:15:10 -0500 |
---|---|---|
committer | Ayman Bagabas <ayman.bagabas@gmail.com> | 2023-11-16 11:15:10 -0500 |
commit | c62aa3e780da6f85f6e1ddd7628ab30ec9d92b53 (patch) | |
tree | fefa6785e1acd7ed855afb8dc04881efd569a1a1 /internal/trace/trace.go | |
parent | 63b586b9559508baf7442c39db3327c91d37486c (diff) | |
download | go-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.go | 55 |
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)¤t.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)¤t.Load() != 0 { - logger.Output(2, fmt.Sprintf(format, args...)) // nolint: errcheck - } -} |