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

Method initUsageReport

cmd/tempo/app/modules.go:586–626  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

584}
585
586func (t *App) initUsageReport() (services.Service, error) {
587 if !t.cfg.UsageReport.Enabled {
588 return nil, nil
589 }
590
591 t.cfg.UsageReport.Leader = false
592 if t.isModuleActive(LiveStore) {
593 t.cfg.UsageReport.Leader = true
594 }
595
596 usagestats.Target(t.cfg.Target)
597
598 var err error
599 var reader backend.RawReader
600 var writer backend.RawWriter
601
602 switch t.cfg.StorageConfig.Trace.Backend {
603 case backend.Local:
604 reader, writer, _, err = local.New(t.cfg.StorageConfig.Trace.Local)
605 case backend.GCS:
606 reader, writer, _, err = gcs.New(t.cfg.StorageConfig.Trace.GCS)
607 case backend.S3:
608 reader, writer, _, err = s3.New(t.cfg.StorageConfig.Trace.S3)
609 case backend.Azure:
610 reader, writer, _, err = azure.New(t.cfg.StorageConfig.Trace.Azure)
611 default:
612 err = fmt.Errorf("unknown backend %s", t.cfg.StorageConfig.Trace.Backend)
613 }
614
615 if err != nil {
616 return nil, fmt.Errorf("failed to initialize usage report: %w", err)
617 }
618
619 ur, err := usagestats.NewReporter(t.cfg.UsageReport, t.cfg.LiveStore.Ring.KVStore, reader, writer, util_log.Logger, prometheus.DefaultRegisterer)
620 if err != nil {
621 level.Info(util_log.Logger).Log("msg", "failed to initialize usage report", "err", err)
622 return nil, nil
623 }
624 t.usageReport = ur
625 return ur, nil
626}
627
628func (t *App) initCacheProvider() (services.Service, error) {
629 c, err := cache.NewProvider(&t.cfg.CacheProvider, util_log.Logger)

Callers

nothing calls this directly

Calls 8

isModuleActiveMethod · 0.95
TargetFunction · 0.92
NewFunction · 0.92
NewFunction · 0.92
NewFunction · 0.92
NewFunction · 0.92
NewReporterFunction · 0.92
LogMethod · 0.65

Tested by

no test coverage detected