MCPcopy
hub / github.com/grafana/tempo / BenchmarkUsageTrackerCollect

Function BenchmarkUsageTrackerCollect

modules/distributor/usage/tracker_test.go:629–649  ·  view source on GitHub ↗
(b *testing.B)

Source from the content-addressed store, hash-verified

627}
628
629func BenchmarkUsageTrackerCollect(b *testing.B) {
630 var (
631 tr = test.MakeTrace(10, nil)
632 dims = map[string]string{"service.name": ""}
633 labelsFn = func(_ string) map[string]string { return dims } // Allocation outside the function to not influence benchmark
634 maxFn = func(_ string) uint64 { return 0 }
635 req = httptest.NewRequest("", "/", nil)
636 resp = &NoopHTTPResponseWriter{}
637 )
638 logger := log.NewNopLogger()
639
640 u, err := NewTracker(testConfig(), "test", labelsFn, maxFn, logger)
641 require.NoError(b, err)
642
643 u.Observe("test", tr.ResourceSpans)
644
645 handler := u.Handler()
646 for i := 0; i < b.N; i++ {
647 handler.ServeHTTP(resp, req)
648 }
649}
650
651type NoopHTTPResponseWriter struct {
652 headers map[string][]string

Callers

nothing calls this directly

Calls 6

ObserveMethod · 0.95
HandlerMethod · 0.95
MakeTraceFunction · 0.92
NewTrackerFunction · 0.85
testConfigFunction · 0.70
ServeHTTPMethod · 0.45

Tested by

no test coverage detected