github.com/safing/portbase@v0.19.5/log/trace_test.go (about) 1 package log 2 3 import ( 4 "context" 5 "testing" 6 "time" 7 ) 8 9 func TestContextTracer(t *testing.T) { 10 t.Parallel() 11 12 // skip 13 if testing.Short() { 14 t.Skip() 15 } 16 17 ctx, tracer := AddTracer(context.Background()) 18 _ = Tracer(ctx) 19 20 tracer.Trace("api: request received, checking security") 21 time.Sleep(1 * time.Millisecond) 22 tracer.Trace("login: logging in user") 23 time.Sleep(1 * time.Millisecond) 24 tracer.Trace("database: fetching requested resources") 25 time.Sleep(10 * time.Millisecond) 26 tracer.Warning("database: partial failure") 27 time.Sleep(10 * time.Microsecond) 28 tracer.Trace("renderer: rendering output") 29 time.Sleep(1 * time.Millisecond) 30 tracer.Trace("api: returning request") 31 32 tracer.Trace("api: completed request") 33 tracer.Submit() 34 time.Sleep(100 * time.Millisecond) 35 }