diff --git a/Cargo.lock b/Cargo.lock index 1edc9b55f1a80..36328c6dbc212 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -4110,7 +4110,7 @@ checksum = "cef509aa9bc73864d6756f0d34d35504af3cf0844373afe9b8669a5b8005a729" dependencies = [ "console", "number_prefix", - "portable-atomic", + "portable-atomic 0.3.15", "unicode-segmentation", "unicode-width", ] @@ -4896,31 +4896,31 @@ dependencies = [ [[package]] name = "metrics" -version = "0.20.1" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b9b8653cec6897f73b519a43fba5ee3d50f62fe9af80b428accdcc093b4a849" +checksum = "aa8ebbd1a9e57bbab77b9facae7f5136aea44c356943bf9a198f647da64285d6" dependencies = [ - "ahash 0.7.6", + "ahash 0.8.2", "metrics-macros", - "portable-atomic", + "portable-atomic 1.3.1", ] [[package]] name = "metrics-macros" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "731f8ecebd9f3a4aa847dfe75455e4757a45da40a7793d2f0b1f9b6ed18b23f3" +checksum = "ddece26afd34c31585c74a4db0630c376df271c285d682d1e55012197830b6df" dependencies = [ "proc-macro2 1.0.56", "quote 1.0.26", - "syn 1.0.109", + "syn 2.0.10", ] [[package]] name = "metrics-tracing-context" -version = "0.12.0" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6097e2772147f332c9aedba572e9cd334b7946e1762d8ae4d05db0faf962542a" +checksum = "8fec95d1490f2b7e2d49462f9d75aa4fed52cc21e0b40aefc5987c6f404d40a2" dependencies = [ "itoa", "lockfree-object-pool", @@ -4934,21 +4934,19 @@ dependencies = [ [[package]] name = "metrics-util" -version = "0.14.0" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d24dc2dbae22bff6f1f9326ffce828c9f07ef9cc1e8002e5279f845432a30a" +checksum = "111cb375987443c3de8d503580b536f77dc8416d32db62d9456db5d93bd7ac47" dependencies = [ "aho-corasick 0.7.20", "crossbeam-epoch", "crossbeam-utils", - "hashbrown 0.12.3", + "hashbrown 0.13.2", "indexmap", "metrics", "num_cpus", - "ordered-float 2.10.0", - "parking_lot", - "portable-atomic", - "quanta 0.10.1", + "ordered-float 3.7.0", + "quanta", "radix_trie", "sketches-ddsketch", ] @@ -6042,6 +6040,12 @@ version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "15eb2c6e362923af47e13c23ca5afb859e83d54452c55b0b9ac763b8f7c1ac16" +[[package]] +name = "portable-atomic" +version = "1.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1bbda379e6e462c97ea6afe9f6233619b202bbc4968d7caa6917788d2070a044" + [[package]] name = "portpicker" version = "1.0.0" @@ -6396,22 +6400,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "658fa1faf7a4cc5f057c9ee5ef560f717ad9d8dc66d975267f709624d6e1ab88" -[[package]] -name = "quanta" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7e31331286705f455e56cca62e0e717158474ff02b7936c1fa596d983f4ae27" -dependencies = [ - "crossbeam-utils", - "libc", - "mach", - "once_cell", - "raw-cpuid", - "wasi 0.10.2+wasi-snapshot-preview1", - "web-sys", - "winapi", -] - [[package]] name = "quanta" version = "0.11.0" @@ -9532,7 +9520,7 @@ dependencies = [ "prost", "prost-build", "prost-types", - "quanta 0.11.0", + "quanta", "quickcheck", "quickcheck_macros", "rand 0.8.5", @@ -9938,12 +9926,6 @@ version = "0.9.0+wasi-snapshot-preview1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519" -[[package]] -name = "wasi" -version = "0.10.2+wasi-snapshot-preview1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd6fbd9a79829dd1ad0cc20627bf1ed606756a7f77edff7b66b7064f9cb327c6" - [[package]] name = "wasi" version = "0.11.0+wasi-snapshot-preview1" diff --git a/Cargo.toml b/Cargo.toml index b6f8983864d1c..84d9342171da3 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -154,8 +154,8 @@ tracing-subscriber = { version = "0.3.17", default-features = false, features = tracing-tower = { git = "https://github.com/tokio-rs/tracing", default-features = false, rev = "e0642d949891546a3bb7e47080365ee7274f05cd" } # Metrics -metrics = "0.20.1" -metrics-tracing-context = { version = "0.12.0", default-features = false } +metrics = "0.21.0" +metrics-tracing-context = { version = "0.14.0", default-features = false } # AWS - Official SDK aws-sdk-s3 = { version = "0.21.0", default-features = false, features = ["native-tls"], optional = true } diff --git a/lib/vector-buffers/Cargo.toml b/lib/vector-buffers/Cargo.toml index 3e8cd39e9edc4..c28ba08d85508 100644 --- a/lib/vector-buffers/Cargo.toml +++ b/lib/vector-buffers/Cargo.toml @@ -17,7 +17,7 @@ crossbeam-utils = { version = "0.8.15", default-features = false } fslock = { version = "0.2.1", default-features = false, features = ["std"] } futures = { version = "0.3.28", default-features = false, features = ["std"] } memmap2 = { version = "0.5.10", default-features = false } -metrics = "0.20.1" +metrics = "0.21.0" num-traits = { version = "0.2.15", default-features = false } pin-project = { version = "1.0.12", default-features = false } rkyv = { version = "0.7.40", default-features = false, features = ["size_32", "std", "strict", "validation"] } @@ -36,8 +36,8 @@ clap = "4.1.14" criterion = { version = "0.4", features = ["html_reports", "async_tokio"] } crossbeam-queue = "0.3.8" hdrhistogram = "7.5.2" -metrics-tracing-context = { version = "0.12.0", default-features = false } -metrics-util = { version = "0.14.0", default-features = false, features = ["debugging"] } +metrics-tracing-context = { version = "0.14.0", default-features = false } +metrics-util = { version = "0.15.0", default-features = false, features = ["debugging"] } once_cell = "1.17" proptest = "1.1" quickcheck = "1.0" diff --git a/lib/vector-buffers/benches/common.rs b/lib/vector-buffers/benches/common.rs index 1a07505215583..2b42646738ee9 100644 --- a/lib/vector-buffers/benches/common.rs +++ b/lib/vector-buffers/benches/common.rs @@ -2,7 +2,8 @@ use std::{error, fmt, path::PathBuf}; use bytes::{Buf, BufMut}; use metrics_tracing_context::{MetricsLayer, TracingContextLayer}; -use metrics_util::{debugging::DebuggingRecorder, layers::Layer}; +use metrics_util::debugging::DebuggingRecorder; +use metrics_util::layers::Layer; use tracing::Span; use tracing_subscriber::prelude::__tracing_subscriber_SubscriberExt; use vector_buffers::{ diff --git a/lib/vector-common/Cargo.toml b/lib/vector-common/Cargo.toml index 5fa39b62e10ee..022a86f34e6f8 100644 --- a/lib/vector-common/Cargo.toml +++ b/lib/vector-common/Cargo.toml @@ -49,7 +49,7 @@ crossbeam-utils = { version = "0.8.15", default-features = false } derivative = "2.1.3" futures = { version = "0.3.28", default-features = false, features = ["std"] } indexmap = { version = "~1.9.3", default-features = false } -metrics = "0.20.1" +metrics = "0.21.0" nom = { version = "7", optional = true } ordered-float = { version = "3.7.0", default-features = false } paste = "1.0.12" diff --git a/lib/vector-core/Cargo.toml b/lib/vector-core/Cargo.toml index bf90c1702bed0..7a31961b1bb49 100644 --- a/lib/vector-core/Cargo.toml +++ b/lib/vector-core/Cargo.toml @@ -24,9 +24,9 @@ http = { version = "0.2.9", default-features = false } hyper-proxy = { version = "0.9.1", default-features = false, features = ["openssl-tls"] } indexmap = { version = "~1.9.3", default-features = false, features = ["serde"] } lookup = { package = "vector-lookup", path = "../vector-lookup" } -metrics = "0.20.1" -metrics-tracing-context = { version = "0.12.0", default-features = false } -metrics-util = { version = "0.14.0", default-features = false, features = ["registry"] } +metrics = "0.21.0" +metrics-tracing-context = { version = "0.14.0", default-features = false } +metrics-util = { version = "0.15.0", default-features = false, features = ["registry"] } mlua = { version = "0.8.8", default-features = false, features = ["lua54", "send", "vendored"], optional = true } no-proxy = { version = "0.3.2", default-features = false, features = ["serialize"] } once_cell = { version = "1.17", default-features = false } diff --git a/lib/vector-core/src/metrics/label_filter.rs b/lib/vector-core/src/metrics/label_filter.rs index 80f99e28c3515..1f6d5283e548f 100644 --- a/lib/vector-core/src/metrics/label_filter.rs +++ b/lib/vector-core/src/metrics/label_filter.rs @@ -1,11 +1,11 @@ -use metrics::Label; +use metrics::{KeyName, Label}; use metrics_tracing_context::LabelFilter; #[derive(Debug, Clone)] pub(crate) struct VectorLabelFilter; impl LabelFilter for VectorLabelFilter { - fn should_include_label(&self, label: &Label) -> bool { + fn should_include_label(&self, _key: &KeyName, label: &Label) -> bool { let key = label.key(); key == "component_id" || key == "component_type" diff --git a/lib/vector-core/src/metrics/recency.rs b/lib/vector-core/src/metrics/recency.rs index e7c33cfe8be5a..d6f5fb92490c3 100644 --- a/lib/vector-core/src/metrics/recency.rs +++ b/lib/vector-core/src/metrics/recency.rs @@ -48,11 +48,11 @@ //! not, and thus whether it should actually be deleted. use std::collections::HashMap; -use std::sync::atomic::{AtomicU64, AtomicUsize, Ordering}; +use std::sync::atomic::{AtomicUsize, Ordering}; use std::sync::Arc; use std::time::Duration; -use metrics::{Counter, CounterFn, Gauge, GaugeFn, HistogramFn}; +use metrics::{atomics::AtomicU64, Counter, CounterFn, Gauge, GaugeFn, HistogramFn}; use metrics_util::{ registry::{Registry, Storage}, Hashable, MetricKind, MetricKindMask, diff --git a/lib/vector-core/src/metrics/storage.rs b/lib/vector-core/src/metrics/storage.rs index f11f742a20927..d8955c11d30da 100644 --- a/lib/vector-core/src/metrics/storage.rs +++ b/lib/vector-core/src/metrics/storage.rs @@ -1,9 +1,9 @@ use std::sync::{ - atomic::{AtomicU32, AtomicU64, Ordering}, + atomic::{AtomicU32, Ordering}, Arc, }; -use metrics::{GaugeFn, HistogramFn}; +use metrics::{atomics::AtomicU64, GaugeFn, HistogramFn}; use metrics_util::registry::Storage; use crate::event::{metric::Bucket, MetricValue};