Skip to content

Commit 2d7beb4

Browse files
authored
chore: Upgrade opentelemetry and remove metrics crate (#15484)
Signed-off-by: Xuanwo <github@xuanwo.io>
1 parent 000ad58 commit 2d7beb4

File tree

11 files changed

+62
-125
lines changed

11 files changed

+62
-125
lines changed

Cargo.lock

Lines changed: 21 additions & 90 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

Cargo.toml

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -164,11 +164,7 @@ geo = { version = "0.27.0", features = ["use-serde"] }
164164
geos = { version = "8.3", features = ["static", "geo", "geo-types"] }
165165
geozero = { version = "0.11.0", features = ["default", "with-wkb", "with-geos", "with-geojson"] }
166166
itertools = "0.10.5"
167-
log = { version = "0.4.21", features = ["serde", "kv_unstable_std"] }
168-
logcall = "0.1.5"
169167
match-template = "0.0.1"
170-
metrics = "0.20.1"
171-
minitrace = { version = "0.6", features = ["enable"] }
172168
mysql_async = { version = "0.33", default-features = false, features = ["rustls-tls"] }
173169
ordered-float = { version = "4.1.0", default-features = false }
174170
poem = { version = "~1.3.57", features = ["rustls", "multipart", "compression"] }
@@ -242,6 +238,20 @@ tonic-build = { version = "0.10.2" }
242238
bumpalo = "3.12.0"
243239
tikv-jemalloc-ctl = { version = "0.5.0", features = ["use_std"] }
244240

241+
# Observability
242+
log = { version = "0.4.21", features = ["serde", "kv_unstable_std"] }
243+
logcall = "0.1.5"
244+
minitrace = { version = "0.6", features = ["enable"] }
245+
minitrace-opentelemetry = "0.6"
246+
opentelemetry = { version = "0.22", features = ["trace", "logs"] }
247+
opentelemetry-otlp = { version = "0.15", features = ["trace", "logs", "grpc-tonic"] }
248+
opentelemetry_sdk = { version = "0.22", features = ["trace", "logs", "rt-tokio"] }
249+
tracing = "0.1.40"
250+
opentelemetry-http = "0.11.0"
251+
tracing-appender = "0.2.3"
252+
console-subscriber = { version = "0.2.0" }
253+
tracing-subscriber = { version = "0.3.17", features = ["env-filter", "json", "valuable"] }
254+
245255
[profile.release]
246256
debug = 1
247257
lto = "thin"
@@ -283,15 +293,16 @@ debug-assertions = true
283293
overflow-checks = true
284294
rpath = false
285295

286-
[patch.crates-io]
287296
# If there are dependencies that need patching, they can be listed below.
288-
# Changes to upstream: update to tonic 0.11
297+
[patch.crates-io]
289298
arrow-format = { git = "https://github.com/Xuanwo/arrow-format", rev = "be633a0" }
290-
metrics = { git = "https://github.com/datafuse-extras/metrics.git", rev = "fc2ecd1" }
291299
icelake = { git = "https://github.com/icelake-io/icelake", rev = "be8b2c2" }
292300
micromarshal = { git = "https://github.com/ariesdevil/opensrv", rev = "6c96813" }
293301
async-backtrace = { git = "https://github.com/zhang2014/async-backtrace.git", rev = "dea4553" }
294302
z3 = { git = "https://github.com/prove-rs/z3.rs", rev = "247d308" }
295303
z3-sys = { git = "https://github.com/prove-rs/z3.rs", rev = "247d308" }
296304
geozero = { git = "https://github.com/georust/geozero", rev = "1d78b36" }
305+
# Wait for upstream to release new version.
306+
minitrace = { package = "minitrace", git = "https://github.com/tikv/minitrace-rust", rev = "b987f64" }
307+
minitrace-opentelemetry = { package = "minitrace-opentelemetry", git = "https://github.com/tikv/minitrace-rust", rev = "b987f64" }
297308
# proj = { git = "https://github.com/ariesdevil/proj", rev = "51e1c60" }

src/common/metrics/Cargo.toml

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -10,15 +10,11 @@ edition = { workspace = true }
1010
doctest = false
1111
test = true
1212

13-
[features]
14-
enable-histogram = ["metrics/enable-histogram"]
15-
1613
[dependencies]
1714
# Workspace dependencies
1815
databend-common-base = { path = "../base" }
1916

2017
# Crates.io dependencies
21-
metrics = { workspace = true }
2218
prometheus-client = { workspace = true }
2319

2420
[target.'cfg(target_os = "linux")'.dependencies]

src/common/metrics/src/metrics/storage.rs

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,13 @@
1313
// limitations under the License.
1414

1515
use std::sync::LazyLock;
16+
use std::time::Duration;
1617

1718
use databend_common_base::runtime::metrics::register_counter;
19+
use databend_common_base::runtime::metrics::register_gauge;
1820
use databend_common_base::runtime::metrics::register_histogram_in_milliseconds;
1921
use databend_common_base::runtime::metrics::Counter;
22+
use databend_common_base::runtime::metrics::Gauge;
2023
use databend_common_base::runtime::metrics::Histogram;
2124

2225
// Common metrics.
@@ -172,6 +175,9 @@ static COMPACT_BLOCK_BUILD_TASK_MILLISECONDS: LazyLock<Histogram> = LazyLock::ne
172175
static COMPACT_BLOCK_BUILD_LAZY_PART_MILLISECONDS: LazyLock<Histogram> = LazyLock::new(|| {
173176
register_histogram_in_milliseconds("fuse_compact_block_build_lazy_part_milliseconds")
174177
});
178+
static COMPACT_SEGMENTS_SELECT_DURATION_SECOND: LazyLock<Gauge> =
179+
LazyLock::new(|| register_gauge("fuse_compact_segments_select_duration_second"));
180+
175181
static RECLUSTER_BUILD_TASK_MILLISECONDS: LazyLock<Histogram> =
176182
LazyLock::new(|| register_histogram_in_milliseconds("fuse_recluster_build_task_milliseconds"));
177183
static RECLUSTER_SEGMENT_NUMS_SCHEDULED: LazyLock<Counter> =
@@ -561,6 +567,10 @@ pub fn metrics_inc_compact_block_build_lazy_part_milliseconds(c: u64) {
561567
COMPACT_BLOCK_BUILD_LAZY_PART_MILLISECONDS.observe(c as f64);
562568
}
563569

570+
pub fn metrics_set_compact_segments_select_duration_second(c: Duration) {
571+
COMPACT_SEGMENTS_SELECT_DURATION_SECOND.set(c.as_secs() as i64);
572+
}
573+
564574
/// Pruning metrics.
565575
pub fn metrics_inc_segments_range_pruning_before(c: u64) {
566576
SEGMENTS_RANGE_PRUNING_BEFORE.inc_by(c);

src/common/storage/Cargo.toml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ dashmap = { workspace = true, features = ["serde"] }
2626
flagset = "0.4"
2727
futures = { workspace = true }
2828
log = { workspace = true }
29-
metrics = "0.20.1"
3029
opendal = { workspace = true }
3130
ordered-float = { workspace = true }
3231
parquet = { workspace = true }

src/common/tracing/Cargo.toml

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,20 @@ console = ["console-subscriber", "tracing", "tracing-subscriber"]
1818
databend-common-base = { path = "../base" }
1919

2020
# Crates.io dependencies
21-
console-subscriber = { version = "0.2.0", optional = true }
21+
console-subscriber = { workspace = true, optional = true }
2222
defer = "0.2"
2323
fern = "0.6.2"
2424
humantime = "2.1.0"
2525
itertools = { workspace = true }
2626
log = { workspace = true }
2727
minitrace = { workspace = true }
28-
minitrace-opentelemetry = "0.6"
29-
opentelemetry = { version = "0.21", features = ["trace", "logs"] }
30-
opentelemetry-otlp = { version = "0.14", features = ["trace", "logs", "grpc-tonic"] }
31-
opentelemetry_sdk = { version = "0.21", features = ["trace", "logs", "rt-tokio"] }
28+
minitrace-opentelemetry = { workspace = true }
29+
opentelemetry = { workspace = true }
30+
opentelemetry-otlp = { workspace = true }
31+
opentelemetry_sdk = { workspace = true }
3232
serde = { workspace = true }
3333
serde_json = { workspace = true }
3434
tonic = { workspace = true }
35-
tracing = { version = "0.1.40", optional = true }
36-
tracing-appender = "0.2.3"
37-
tracing-subscriber = { version = "0.3.17", features = ["env-filter", "json", "valuable"], optional = true }
35+
tracing = { workspace = true, optional = true }
36+
tracing-appender = { workspace = true }
37+
tracing-subscriber = { workspace = true, optional = true }

src/meta/client/Cargo.toml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,6 @@ edition = { workspace = true }
1313
doctest = false
1414
test = true
1515

16-
[features]
17-
enable-histogram = ["databend-common-metrics/enable-histogram"]
18-
1916
[dependencies]
2017
databend-common-arrow = { path = "../../common/arrow" }
2118
databend-common-base = { path = "../../common/base" }

0 commit comments

Comments
 (0)