Skip to content

kaihendry/slogd

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

slog duration

No need for heavyweight tracing tools like X-ray, Jaeger or Zipkin. "slogd" measures the time for a function to return an error object.

Inspired by @tj's Apex logs's Trace function

Sample code:

slog.SetDefault(slog.New(slog.NewTextHandler(os.Stdout)))
url := "https://httpbin.org/delay/2"
var err error
// Caveat: Only one defer slogd per function!
defer slogd.New("fetching", "url", url).Stop(&err)
_, err = http.Get(url)

Sample output:

time=2023-02-10T20:21:46.564+08:00 level=INFO msg=fetching url=https://httpbin.org/delay/2 duration=3.716787544s