Skip to content

Commit c67cf93

Browse files
authored
Chore: Use dskit/spanlogger (grafana#322)
* Chore: Use dskit/spanlogger Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com> * pkg/util/log.WithContext: Remove check for empty string Signed-off-by: Arve Knudsen <arve.knudsen@gmail.com>
1 parent 4b8cf20 commit c67cf93

44 files changed

Lines changed: 300 additions & 305 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.errcheck-exclude

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,4 @@ io/ioutil.ReadFile
44
(github.com/go-kit/kit/log.Logger).Log
55
io.Copy
66
(github.com/opentracing/opentracing-go.Tracer).Inject
7-
(*github.com/grafana/mimir/pkg/util/spanlogger.SpanLogger).Error
7+
(*github.com/grafana/dskit/spanlogger.SpanLogger).Error

pkg/chunk/aws/dynamodb_storage_client.go

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ import (
3737
chunk_util "github.com/grafana/mimir/pkg/chunk/util"
3838
"github.com/grafana/mimir/pkg/util"
3939
"github.com/grafana/mimir/pkg/util/log"
40+
util_log "github.com/grafana/mimir/pkg/util/log"
4041
"github.com/grafana/mimir/pkg/util/math"
4142
"github.com/grafana/mimir/pkg/util/spanlogger"
4243
)
@@ -373,7 +374,7 @@ type chunksPlusError struct {
373374

374375
// GetChunks implements chunk.Client.
375376
func (a dynamoDBStorageClient) GetChunks(ctx context.Context, chunks []chunk.Chunk) ([]chunk.Chunk, error) {
376-
log, ctx := spanlogger.New(ctx, "GetChunks.DynamoDB", ot.Tag{Key: "numChunks", Value: len(chunks)})
377+
log, ctx := spanlogger.New(ctx, util_log.Logger, "GetChunks.DynamoDB", ot.Tag{Key: "numChunks", Value: len(chunks)})
377378
defer log.Span.Finish()
378379
level.Debug(log).Log("chunks requested", len(chunks))
379380

@@ -422,7 +423,7 @@ var placeholder = []byte{'c'}
422423
// Structure is identical to BatchWrite(), but operating on different datatypes
423424
// so cannot share implementation. If you fix a bug here fix it there too.
424425
func (a dynamoDBStorageClient) getDynamoDBChunks(ctx context.Context, chunks []chunk.Chunk) ([]chunk.Chunk, error) {
425-
log, ctx := spanlogger.New(ctx, "getDynamoDBChunks", ot.Tag{Key: "numChunks", Value: len(chunks)})
426+
log, ctx := spanlogger.New(ctx, util_log.Logger, "getDynamoDBChunks", ot.Tag{Key: "numChunks", Value: len(chunks)})
426427
defer log.Span.Finish()
427428
outstanding := dynamoDBReadRequest{}
428429
chunksByKey := map[string]chunk.Chunk{}

pkg/chunk/cache/memcached.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -141,7 +141,7 @@ func (c *Memcached) fetch(ctx context.Context, keys []string) (found []string, b
141141
var items map[string]*memcache.Item
142142
const method = "Memcache.GetMulti"
143143
err := instr.CollectedRequest(ctx, method, c.requestDuration, memcacheStatusCode, func(innerCtx context.Context) error {
144-
log, _ := spanlogger.New(innerCtx, method)
144+
log, _ := spanlogger.New(innerCtx, c.logger, method)
145145
defer log.Finish()
146146
log.LogFields(otlog.Int("keys requested", len(keys)))
147147

pkg/chunk/cache/redis_cache.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ func (c *RedisCache) Fetch(ctx context.Context, keys []string) (found []string,
6565
var items [][]byte
6666
// Run a tracked request, using c.requestDuration to monitor requests.
6767
err := instr.CollectedRequest(ctx, method, c.requestDuration, redisStatusCode, func(ctx context.Context) error {
68-
log, _ := spanlogger.New(ctx, method)
68+
log, _ := spanlogger.New(ctx, c.logger, method)
6969
defer log.Finish()
7070
log.LogFields(otlog.Int("keys requested", len(keys)))
7171

pkg/chunk/chunk_store.go

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ func (c *store) Put(ctx context.Context, chunks []Chunk) error {
155155

156156
// PutOne implements Store
157157
func (c *store) PutOne(ctx context.Context, from, through model.Time, chunk Chunk) error {
158-
log, ctx := spanlogger.New(ctx, "ChunkStore.PutOne")
158+
log, ctx := spanlogger.New(ctx, util_log.Logger, "ChunkStore.PutOne")
159159
defer log.Finish()
160160
chunks := []Chunk{chunk}
161161

@@ -205,7 +205,7 @@ func (c *store) calculateIndexEntries(userID string, from, through model.Time, c
205205

206206
// Get implements Store
207207
func (c *store) Get(ctx context.Context, userID string, from, through model.Time, allMatchers ...*labels.Matcher) ([]Chunk, error) {
208-
log, ctx := spanlogger.New(ctx, "ChunkStore.Get")
208+
log, ctx := spanlogger.New(ctx, util_log.Logger, "ChunkStore.Get")
209209
defer log.Span.Finish()
210210
level.Debug(log).Log("from", from, "through", through, "matchers", len(allMatchers))
211211

@@ -227,7 +227,7 @@ func (c *store) GetChunkRefs(ctx context.Context, userID string, from, through m
227227

228228
// LabelValuesForMetricName retrieves all label values for a single label name and metric name.
229229
func (c *baseStore) LabelValuesForMetricName(ctx context.Context, userID string, from, through model.Time, metricName, labelName string) ([]string, error) {
230-
log, ctx := spanlogger.New(ctx, "ChunkStore.LabelValues")
230+
log, ctx := spanlogger.New(ctx, util_log.Logger, "ChunkStore.LabelValues")
231231
defer log.Span.Finish()
232232
level.Debug(log).Log("from", from, "through", through, "metricName", metricName, "labelName", labelName)
233233

@@ -261,7 +261,7 @@ func (c *baseStore) LabelValuesForMetricName(ctx context.Context, userID string,
261261

262262
// LabelNamesForMetricName retrieves all label names for a metric name.
263263
func (c *store) LabelNamesForMetricName(ctx context.Context, userID string, from, through model.Time, metricName string) ([]string, error) {
264-
log, ctx := spanlogger.New(ctx, "ChunkStore.LabelNamesForMetricName")
264+
log, ctx := spanlogger.New(ctx, util_log.Logger, "ChunkStore.LabelNamesForMetricName")
265265
defer log.Span.Finish()
266266
level.Debug(log).Log("from", from, "through", through, "metricName", metricName)
267267

@@ -294,7 +294,7 @@ func (c *store) LabelNamesForMetricName(ctx context.Context, userID string, from
294294

295295
func (c *baseStore) validateQueryTimeRange(ctx context.Context, userID string, from *model.Time, through *model.Time) (bool, error) {
296296
//nolint:ineffassign,staticcheck //Leaving ctx even though we don't currently use it, we want to make it available for when we might need it and hopefully will ensure us using the correct context at that time
297-
log, ctx := spanlogger.New(ctx, "store.validateQueryTimeRange")
297+
log, ctx := spanlogger.New(ctx, util_log.Logger, "store.validateQueryTimeRange")
298298
defer log.Span.Finish()
299299

300300
if *through < *from {
@@ -324,7 +324,7 @@ func (c *baseStore) validateQueryTimeRange(ctx context.Context, userID string, f
324324
}
325325

326326
func (c *baseStore) validateQuery(ctx context.Context, userID string, from *model.Time, through *model.Time, matchers []*labels.Matcher) (string, []*labels.Matcher, bool, error) {
327-
log, ctx := spanlogger.New(ctx, "store.validateQuery")
327+
log, ctx := spanlogger.New(ctx, util_log.Logger, "store.validateQuery")
328328
defer log.Span.Finish()
329329

330330
shortcut, err := c.validateQueryTimeRange(ctx, userID, from, through)
@@ -345,7 +345,7 @@ func (c *baseStore) validateQuery(ctx context.Context, userID string, from *mode
345345
}
346346

347347
func (c *store) getMetricNameChunks(ctx context.Context, userID string, from, through model.Time, allMatchers []*labels.Matcher, metricName string) ([]Chunk, error) {
348-
log, ctx := spanlogger.New(ctx, "ChunkStore.getMetricNameChunks")
348+
log, ctx := spanlogger.New(ctx, util_log.Logger, "ChunkStore.getMetricNameChunks")
349349
defer log.Finish()
350350
level.Debug(log).Log("from", from, "through", through, "metricName", metricName, "matchers", len(allMatchers))
351351

@@ -380,7 +380,7 @@ func (c *store) getMetricNameChunks(ctx context.Context, userID string, from, th
380380
}
381381

382382
func (c *store) lookupChunksByMetricName(ctx context.Context, userID string, from, through model.Time, matchers []*labels.Matcher, metricName string) ([]Chunk, error) {
383-
log, ctx := spanlogger.New(ctx, "ChunkStore.lookupChunksByMetricName")
383+
log, ctx := spanlogger.New(ctx, util_log.Logger, "ChunkStore.lookupChunksByMetricName")
384384
defer log.Finish()
385385

386386
// Just get chunks for metric if there are no matchers
@@ -448,7 +448,7 @@ func (c *store) lookupChunksByMetricName(ctx context.Context, userID string, fro
448448

449449
func (c *baseStore) lookupIdsByMetricNameMatcher(ctx context.Context, from, through model.Time, userID, metricName string, matcher *labels.Matcher) ([]string, error) {
450450
formattedMatcher := formatMatcher(matcher)
451-
log, ctx := spanlogger.New(ctx, "Store.lookupIdsByMetricNameMatcher", "metricName", metricName, "matcher", formattedMatcher)
451+
log, ctx := spanlogger.New(ctx, util_log.Logger, "Store.lookupIdsByMetricNameMatcher", "metricName", metricName, "matcher", formattedMatcher)
452452
defer log.Span.Finish()
453453

454454
var err error
@@ -498,7 +498,7 @@ func formatMatcher(matcher *labels.Matcher) string {
498498
}
499499

500500
func (c *baseStore) lookupEntriesByQueries(ctx context.Context, queries []IndexQuery) ([]IndexEntry, error) {
501-
log, ctx := spanlogger.New(ctx, "store.lookupEntriesByQueries")
501+
log, ctx := spanlogger.New(ctx, util_log.Logger, "store.lookupEntriesByQueries")
502502
defer log.Span.Finish()
503503

504504
// Nothing to do if there are no queries.

pkg/chunk/chunk_store_utils.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ func (c *Fetcher) worker() {
145145
// FetchChunks fetches a set of chunks from cache and store. Note that the keys passed in must be
146146
// lexicographically sorted, while the returned chunks are not in the same order as the passed in chunks.
147147
func (c *Fetcher) FetchChunks(ctx context.Context, chunks []Chunk, keys []string) ([]Chunk, error) {
148-
log, ctx := spanlogger.New(ctx, "ChunkStore.FetchChunks")
148+
log, ctx := spanlogger.New(ctx, util_log.Logger, "ChunkStore.FetchChunks")
149149
defer log.Span.Finish()
150150

151151
// Now fetch the actual chunk data from Memcache / S3
@@ -205,7 +205,7 @@ func (c *Fetcher) processCacheResponse(ctx context.Context, chunks []Chunk, keys
205205
responses = make(chan decodeResponse)
206206
missing []Chunk
207207
)
208-
log, _ := spanlogger.New(ctx, "Fetcher.processCacheResponse")
208+
log, _ := spanlogger.New(ctx, util_log.Logger, "Fetcher.processCacheResponse")
209209
defer log.Span.Finish()
210210

211211
i, j := 0, 0

pkg/chunk/gcp/bigtable_index_client.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ import (
2323

2424
"github.com/grafana/mimir/pkg/chunk"
2525
chunk_util "github.com/grafana/mimir/pkg/chunk/util"
26+
util_log "github.com/grafana/mimir/pkg/util/log"
2627
"github.com/grafana/mimir/pkg/util/math"
2728
"github.com/grafana/mimir/pkg/util/spanlogger"
2829
)
@@ -337,7 +338,7 @@ func (s *storageClientV1) QueryPages(ctx context.Context, queries []chunk.IndexQ
337338
func (s *storageClientV1) query(ctx context.Context, query chunk.IndexQuery, callback chunk_util.Callback) error {
338339
const null = string('\xff')
339340

340-
log, ctx := spanlogger.New(ctx, "QueryPages", ot.Tag{Key: "tableName", Value: query.TableName}, ot.Tag{Key: "hashValue", Value: query.HashValue})
341+
log, ctx := spanlogger.New(ctx, util_log.Logger, "QueryPages", ot.Tag{Key: "tableName", Value: query.TableName}, ot.Tag{Key: "hashValue", Value: query.HashValue})
341342
defer log.Finish()
342343

343344
table := s.client.Open(query.TableName)

pkg/chunk/series_store.go

Lines changed: 9 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ import (
2121
"github.com/grafana/mimir/pkg/chunk/cache"
2222
"github.com/grafana/mimir/pkg/querier/querysharding"
2323
"github.com/grafana/mimir/pkg/util"
24+
util_log "github.com/grafana/mimir/pkg/util/log"
2425
"github.com/grafana/mimir/pkg/util/spanlogger"
2526
)
2627

@@ -100,7 +101,7 @@ func newSeriesStore(cfg StoreConfig, schema SeriesStoreSchema, index IndexClient
100101

101102
// Get implements Store
102103
func (c *seriesStore) Get(ctx context.Context, userID string, from, through model.Time, allMatchers ...*labels.Matcher) ([]Chunk, error) {
103-
log, ctx := spanlogger.New(ctx, "SeriesStore.Get")
104+
log, ctx := spanlogger.New(ctx, util_log.Logger, "SeriesStore.Get")
104105
defer log.Span.Finish()
105106
level.Debug(log).Log("from", from, "through", through, "matchers", len(allMatchers))
106107

@@ -147,7 +148,7 @@ func (c *seriesStore) Get(ctx context.Context, userID string, from, through mode
147148
}
148149

149150
func (c *seriesStore) GetChunkRefs(ctx context.Context, userID string, from, through model.Time, allMatchers ...*labels.Matcher) ([][]Chunk, []*Fetcher, error) {
150-
log, ctx := spanlogger.New(ctx, "SeriesStore.GetChunkRefs")
151+
log, ctx := spanlogger.New(ctx, util_log.Logger, "SeriesStore.GetChunkRefs")
151152
defer log.Span.Finish()
152153

153154
// Validate the query is within reasonable bounds.
@@ -197,7 +198,7 @@ func (c *seriesStore) GetChunkRefs(ctx context.Context, userID string, from, thr
197198

198199
// LabelNamesForMetricName retrieves all label names for a metric name.
199200
func (c *seriesStore) LabelNamesForMetricName(ctx context.Context, userID string, from, through model.Time, metricName string) ([]string, error) {
200-
log, ctx := spanlogger.New(ctx, "SeriesStore.LabelNamesForMetricName")
201+
log, ctx := spanlogger.New(ctx, util_log.Logger, "SeriesStore.LabelNamesForMetricName")
201202
defer log.Span.Finish()
202203

203204
shortcut, err := c.validateQueryTimeRange(ctx, userID, &from, &through)
@@ -231,7 +232,7 @@ func (c *seriesStore) LabelNamesForMetricName(ctx context.Context, userID string
231232
}
232233

233234
func (c *seriesStore) lookupLabelNamesByChunks(ctx context.Context, from, through model.Time, userID string, seriesIDs []string) ([]string, error) {
234-
log, ctx := spanlogger.New(ctx, "SeriesStore.lookupLabelNamesByChunks")
235+
log, ctx := spanlogger.New(ctx, util_log.Logger, "SeriesStore.lookupLabelNamesByChunks")
235236
defer log.Span.Finish()
236237

237238
// Lookup the series in the index to get the chunks.
@@ -264,7 +265,7 @@ func (c *seriesStore) lookupLabelNamesByChunks(ctx context.Context, from, throug
264265
return labelNamesFromChunks(allChunks), nil
265266
}
266267
func (c *seriesStore) lookupSeriesByMetricNameMatchers(ctx context.Context, from, through model.Time, userID, metricName string, matchers []*labels.Matcher) ([]string, error) {
267-
log, ctx := spanlogger.New(ctx, "SeriesStore.lookupSeriesByMetricNameMatchers", "metricName", metricName, "matchers", len(matchers))
268+
log, ctx := spanlogger.New(ctx, util_log.Logger, "SeriesStore.lookupSeriesByMetricNameMatchers", "metricName", metricName, "matchers", len(matchers))
268269
defer log.Span.Finish()
269270

270271
// Just get series for metric if there are no matchers
@@ -342,7 +343,7 @@ func (c *seriesStore) lookupSeriesByMetricNameMatcher(ctx context.Context, from,
342343
}
343344

344345
func (c *seriesStore) lookupChunksBySeries(ctx context.Context, from, through model.Time, userID string, seriesIDs []string) ([]string, error) {
345-
log, ctx := spanlogger.New(ctx, "SeriesStore.lookupChunksBySeries")
346+
log, ctx := spanlogger.New(ctx, util_log.Logger, "SeriesStore.lookupChunksBySeries")
346347
defer log.Span.Finish()
347348

348349
level.Debug(log).Log("seriesIDs", len(seriesIDs))
@@ -368,7 +369,7 @@ func (c *seriesStore) lookupChunksBySeries(ctx context.Context, from, through mo
368369
}
369370

370371
func (c *seriesStore) lookupLabelNamesBySeries(ctx context.Context, from, through model.Time, userID string, seriesIDs []string) ([]string, error) {
371-
log, ctx := spanlogger.New(ctx, "SeriesStore.lookupLabelNamesBySeries")
372+
log, ctx := spanlogger.New(ctx, util_log.Logger, "SeriesStore.lookupLabelNamesBySeries")
372373
defer log.Span.Finish()
373374

374375
level.Debug(log).Log("seriesIDs", len(seriesIDs))
@@ -412,7 +413,7 @@ func (c *seriesStore) Put(ctx context.Context, chunks []Chunk) error {
412413

413414
// PutOne implements Store
414415
func (c *seriesStore) PutOne(ctx context.Context, from, through model.Time, chunk Chunk) error {
415-
log, ctx := spanlogger.New(ctx, "SeriesStore.PutOne")
416+
log, ctx := spanlogger.New(ctx, util_log.Logger, "SeriesStore.PutOne")
416417
defer log.Finish()
417418
writeChunk := true
418419

pkg/chunk/storage/caching_index_client.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import (
2020
"github.com/grafana/mimir/pkg/chunk/cache"
2121
chunk_util "github.com/grafana/mimir/pkg/chunk/util"
2222
"github.com/grafana/mimir/pkg/tenant"
23+
util_log "github.com/grafana/mimir/pkg/util/log"
2324
"github.com/grafana/mimir/pkg/util/spanlogger"
2425
)
2526

@@ -244,7 +245,7 @@ func (s *cachingIndexClient) cacheStore(ctx context.Context, keys []string, batc
244245
}
245246

246247
func (s *cachingIndexClient) cacheFetch(ctx context.Context, keys []string) (batches []ReadBatch, missed []string) {
247-
log, ctx := spanlogger.New(ctx, "cachingIndexClient.cacheFetch")
248+
log, ctx := spanlogger.New(ctx, util_log.Logger, "cachingIndexClient.cacheFetch")
248249
defer log.Finish()
249250

250251
cacheGets.Add(float64(len(keys)))

pkg/chunk/util/parallel_chunk_fetch.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import (
1212
otlog "github.com/opentracing/opentracing-go/log"
1313

1414
"github.com/grafana/mimir/pkg/chunk"
15+
util_log "github.com/grafana/mimir/pkg/util/log"
1516
"github.com/grafana/mimir/pkg/util/spanlogger"
1617
)
1718

@@ -25,7 +26,7 @@ var decodeContextPool = sync.Pool{
2526

2627
// GetParallelChunks fetches chunks in parallel (up to maxParallel).
2728
func GetParallelChunks(ctx context.Context, chunks []chunk.Chunk, f func(context.Context, *chunk.DecodeContext, chunk.Chunk) (chunk.Chunk, error)) ([]chunk.Chunk, error) {
28-
log, ctx := spanlogger.New(ctx, "GetParallelChunks")
29+
log, ctx := spanlogger.New(ctx, util_log.Logger, "GetParallelChunks")
2930
defer log.Finish()
3031
log.LogFields(otlog.Int("chunks requested", len(chunks)))
3132

0 commit comments

Comments
 (0)