Skip to content

Commit cc08682

Browse files
authored
add log to identify request cache hit and cache miss (#4800)
* add log to identify request cache hit and cache miss Signed-off-by: Mengmeng Yang <[email protected]> * change log level from info to debug Signed-off-by: Mengmeng Yang <[email protected]> Signed-off-by: Mengmeng Yang <[email protected]>
1 parent 1da8fae commit cc08682

File tree

1 file changed

+26
-3
lines changed

1 file changed

+26
-3
lines changed

pkg/querier/queryrange/results_cache.go

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -227,6 +227,7 @@ func (s resultsCache) Do(ctx context.Context, r Request) (Response, error) {
227227
}
228228

229229
if s.shouldCache != nil && !s.shouldCache(r) {
230+
level.Debug(util_log.WithContext(ctx, s.logger)).Log("msg", "should not cache", "start", r.GetStart(), "spanID", jaegerSpanID(ctx))
230231
return s.next.Do(ctx, r)
231232
}
232233

@@ -243,6 +244,7 @@ func (s resultsCache) Do(ctx context.Context, r Request) (Response, error) {
243244
maxCacheFreshness := validation.MaxDurationPerTenant(tenantIDs, s.limits.MaxCacheFreshness)
244245
maxCacheTime := int64(model.Now().Add(-maxCacheFreshness))
245246
if r.GetStart() > maxCacheTime {
247+
level.Debug(util_log.WithContext(ctx, s.logger)).Log("msg", "cache miss", "start", r.GetStart(), "spanID", jaegerSpanID(ctx))
246248
return s.next.Do(ctx, r)
247249
}
248250

@@ -368,6 +370,7 @@ func getHeaderValuesWithName(r Response, headerName string) (headerValues []stri
368370
}
369371

370372
func (s resultsCache) handleMiss(ctx context.Context, r Request, maxCacheTime int64) (Response, []Extent, error) {
373+
level.Debug(util_log.WithContext(ctx, s.logger)).Log("msg", "handle miss", "start", r.GetStart(), "spanID", jaegerSpanID(ctx))
371374
response, err := s.next.Do(ctx, r)
372375
if err != nil {
373376
return nil, nil, err
@@ -396,6 +399,8 @@ func (s resultsCache) handleHit(ctx context.Context, r Request, extents []Extent
396399
log, ctx := spanlogger.New(ctx, "handleHit")
397400
defer log.Finish()
398401

402+
level.Debug(util_log.WithContext(ctx, log)).Log("msg", "handle hit", "start", r.GetStart(), "spanID", jaegerSpanID(ctx))
403+
399404
requests, responses, err := s.partition(r, extents)
400405
if err != nil {
401406
return nil, nil, err
@@ -639,18 +644,36 @@ func (s resultsCache) put(ctx context.Context, key string, extents []Extent) {
639644
s.cache.Store(ctx, []string{cache.HashKey(key)}, [][]byte{buf})
640645
}
641646

647+
func jaegerSpanID(ctx context.Context) string {
648+
spanContext, ok := getSpanContext(ctx)
649+
if !ok {
650+
return ""
651+
}
652+
653+
return spanContext.SpanID().String()
654+
}
655+
642656
func jaegerTraceID(ctx context.Context) string {
657+
spanContext, ok := getSpanContext(ctx)
658+
if !ok {
659+
return ""
660+
}
661+
662+
return spanContext.TraceID().String()
663+
}
664+
665+
func getSpanContext(ctx context.Context) (jaeger.SpanContext, bool) {
643666
span := opentracing.SpanFromContext(ctx)
644667
if span == nil {
645-
return ""
668+
return jaeger.SpanContext{}, false
646669
}
647670

648671
spanContext, ok := span.Context().(jaeger.SpanContext)
649672
if !ok {
650-
return ""
673+
return jaeger.SpanContext{}, false
651674
}
652675

653-
return spanContext.TraceID().String()
676+
return spanContext, true
654677
}
655678

656679
// extractStats returns the stats for a given time range

0 commit comments

Comments
 (0)