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

Method shutdown

modules/distributor/forwarder/manager.go:178–203  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

176}
177
178func (m *Manager) shutdown() error {
179 ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second)
180 defer cancel()
181
182 m.tenantToQueueListMu.Lock()
183 defer m.tenantToQueueListMu.Unlock()
184
185 var errs []error
186 for tenantID, ql := range m.tenantToQueueList {
187 if err := ql.shutdown(ctx); err != nil {
188 errs = append(errs, fmt.Errorf("failed to shutdown queuelist for tenantID=%s: %w", tenantID, err))
189 }
190 }
191
192 m.tenantToQueueList = make(map[string]*queueList)
193
194 for forwarderName, forwarder := range m.forwarderNameToForwarder {
195 if err := forwarder.Shutdown(ctx); err != nil {
196 errs = append(errs, fmt.Errorf("failed to shutdown forwarder with name=%s: %w", forwarderName, err))
197 }
198 }
199
200 m.forwarderNameToForwarder = make(map[string]Forwarder)
201
202 return multierr.Combine(errs...)
203}
204
205func (m *Manager) shutdownQueueList(tenantID string, ql *queueList) {
206 if err := ql.shutdown(context.Background()); err != nil {

Callers 2

runMethod · 0.95
shutdownQueueListMethod · 0.45

Calls 2

ShutdownMethod · 0.65
CombineMethod · 0.65

Tested by

no test coverage detected