@@ -205,6 +205,8 @@ Telemetry::Telemetry(Telemetry&& rhs)
205205 seq_id_(rhs.seq_id_),
206206 config_seq_ids_(rhs.config_seq_ids_),
207207 host_info_(rhs.host_info_) {
208+ cancel_tasks (rhs.tasks_ );
209+
208210 // Register all the metrics that we're tracking by adding them to the
209211 // metrics_snapshots_ container. This allows for simpler iteration logic
210212 // when using the values in `generate-metrics` messages.
@@ -241,12 +243,13 @@ Telemetry::Telemetry(Telemetry&& rhs)
241243 metrics_snapshots_.emplace_back (*m, MetricSnapshot{});
242244 }
243245
244- cancel_tasks (tasks_);
245246 schedule_tasks ();
246247}
247248
248249Telemetry& Telemetry::operator =(Telemetry&& rhs) {
249250 if (&rhs != this ) {
251+ cancel_tasks (rhs.tasks_ );
252+
250253 std::swap (metrics_, rhs.metrics_ );
251254 std::swap (config_, rhs.config_ );
252255 std::swap (logger_, rhs.logger_ );
@@ -298,7 +301,6 @@ Telemetry& Telemetry::operator=(Telemetry&& rhs) {
298301 metrics_snapshots_.emplace_back (*m, MetricSnapshot{});
299302 }
300303
301- cancel_tasks (rhs.tasks_ );
302304 schedule_tasks ();
303305 }
304306 return *this ;
@@ -342,8 +344,7 @@ void Telemetry::send_telemetry(StringView request_type, std::string payload) {
342344
343345 auto post_result = http_client_->post (
344346 telemetry_endpoint_, set_telemetry_headers, std::move (payload),
345- telemetry_on_response_, telemetry_on_error_,
346- tracing::default_clock ().tick + 5s);
347+ telemetry_on_response_, telemetry_on_error_, clock_ ().tick + 5s);
347348 if (auto * error = post_result.if_error ()) {
348349 logger_->log_error (
349350 error->with_prefix (" Unexpected error submitting telemetry event: " ));
@@ -517,8 +518,8 @@ std::string Telemetry::app_closing() {
517518
518519 auto telemetry_body = generate_telemetry_body (" message-batch" );
519520 telemetry_body[" payload" ] = batch_payloads;
520- auto message_batch_payload = telemetry_body.dump ();
521521
522+ auto message_batch_payload = telemetry_body.dump ();
522523 return message_batch_payload;
523524}
524525
0 commit comments