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

Function logResult

modules/frontend/search_handlers.go:177–229  ·  view source on GitHub ↗
(ctx context.Context, logger log.Logger, tenantID string, durationSeconds float64, req *tempopb.SearchRequest, resp *tempopb.SearchResponse, httpResp *http.Response, err error)

Source from the content-addressed store, hash-verified

175}
176
177func logResult(ctx context.Context, logger log.Logger, tenantID string, durationSeconds float64, req *tempopb.SearchRequest, resp *tempopb.SearchResponse, httpResp *http.Response, err error) {
178 traceID, _ := tracing.ExtractTraceID(ctx)
179
180 statusCode := -1
181 if httpResp != nil {
182 statusCode = httpResp.StatusCode
183 } else if st, ok := status.FromError(err); ok {
184 statusCode = int(st.Code())
185 }
186
187 if resp == nil {
188 level.Info(logger).Log(
189 "msg", "search response - no resp",
190 "tenant", tenantID,
191 "traceID", traceID,
192 "duration_seconds", durationSeconds,
193 "status_code", statusCode,
194 "error", err)
195
196 return
197 }
198
199 if resp.Metrics == nil {
200 level.Info(logger).Log(
201 "msg", "search response - no metrics",
202 "tenant", tenantID,
203 "traceID", traceID,
204 "query", req.Query,
205 "range_seconds", req.End-req.Start,
206 "duration_seconds", durationSeconds,
207 "status_code", statusCode,
208 "error", err)
209 return
210 }
211
212 level.Info(logger).Log(
213 "msg", "search response",
214 "tenant", tenantID,
215 "traceID", traceID,
216 "query", req.Query,
217 "range_seconds", req.End-req.Start,
218 "duration_seconds", durationSeconds,
219 "request_throughput", float64(resp.Metrics.InspectedBytes)/durationSeconds,
220 "total_requests", resp.Metrics.TotalJobs,
221 "total_blockBytes", resp.Metrics.TotalBlockBytes,
222 "total_blocks", resp.Metrics.TotalBlocks,
223 "completed_requests", resp.Metrics.CompletedJobs,
224 "inspected_bytes", resp.Metrics.InspectedBytes,
225 "inspected_traces", resp.Metrics.InspectedTraces,
226 "inspected_spans", resp.Metrics.InspectedSpans,
227 "status_code", statusCode,
228 "error", err)
229}
230
231func logRequest(logger log.Logger, tenantID string, req *tempopb.SearchRequest) {
232 level.Info(logger).Log(

Callers 2

newSearchHTTPHandlerFunction · 0.85

Calls 2

ExtractTraceIDFunction · 0.92
LogMethod · 0.65

Tested by

no test coverage detected