diff options
| author | Hazel Atkinson <yellowsink@riseup.net> | 2025-04-11 16:27:27 +0100 |
|---|---|---|
| committer | Hazel Atkinson <yellowsink@riseup.net> | 2025-04-11 16:27:47 +0100 |
| commit | b2f31c65e09e054f39eac5f8fe9847d08e203855 (patch) | |
| tree | 440ea5d1c4132f1180f52f387f19005a26190dd4 /src/main.rs | |
| parent | b5a21103ddb4dd99400912197eff26ade877e25d (diff) | |
| download | containerspy-b2f31c65e09e054f39eac5f8fe9847d08e203855.tar.gz containerspy-b2f31c65e09e054f39eac5f8fe9847d08e203855.tar.bz2 containerspy-b2f31c65e09e054f39eac5f8fe9847d08e203855.zip | |
fix memory leak but actually
Diffstat (limited to 'src/main.rs')
| -rw-r--r-- | src/main.rs | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/main.rs b/src/main.rs index 26b2a4b..8b01073 100644 --- a/src/main.rs +++ b/src/main.rs @@ -5,6 +5,7 @@ use opentelemetry_otlp::{MetricExporter, Protocol, WithExportConfig}; use opentelemetry_sdk::metrics::{PeriodicReader, SdkMeterProvider}; use std::env::args; use std::{collections::BTreeMap, sync::Arc, time::Duration}; +use opentelemetry::metrics::MeterProvider; use tokio::task::JoinHandle; use tokio::time::MissedTickBehavior; use tokio_util::sync::CancellationToken; @@ -97,6 +98,7 @@ async fn main() -> Result<()> { // connect the OTLP exporter let meter_provider = Arc::new(setup_otlp()?); + let meter = Arc::new(meter_provider.meter("cspy_worker")); // fetch-report loop with graceful shutdown let shutdown_token = CancellationToken::new(); @@ -153,7 +155,7 @@ async fn main() -> Result<()> { // all this string cloning hurts me tasks.insert( id_string.clone(), - stats_task::launch_stats_task(cont, docker.clone(), meter_provider.clone()), + stats_task::launch_stats_task(cont, docker.clone(), meter.clone()), ); } } @@ -165,7 +167,7 @@ async fn main() -> Result<()> { } debug("Exiting cleanly", []); - + let _ = meter_provider.force_flush(); Ok(()) |
