Skip to content

Commit d5e409c

Browse files
gruebelcijothomas
andauthored
refactor: re-export tracing for internal-logs (#2867)
Co-authored-by: Cijo Thomas <[email protected]>
1 parent 99cb67d commit d5e409c

File tree

7 files changed

+20
-36
lines changed

7 files changed

+20
-36
lines changed

opentelemetry-http/Cargo.toml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ default = ["internal-logs"]
1515
hyper = ["dep:http-body-util", "dep:hyper", "dep:hyper-util", "dep:tokio"]
1616
reqwest-rustls = ["reqwest", "reqwest/rustls-tls-native-roots"]
1717
reqwest-rustls-webpki-roots = ["reqwest", "reqwest/rustls-tls-webpki-roots"]
18-
internal-logs = ["tracing", "opentelemetry/internal-logs"]
18+
internal-logs = ["opentelemetry/internal-logs"]
1919

2020
[dependencies]
2121
async-trait = { workspace = true }
@@ -27,12 +27,6 @@ hyper-util = { workspace = true, features = ["client-legacy", "http1", "http2"],
2727
opentelemetry = { version = "0.29", path = "../opentelemetry", features = ["trace"] }
2828
reqwest = { workspace = true, features = ["blocking"], optional = true }
2929
tokio = { workspace = true, features = ["time"], optional = true }
30-
tracing = {workspace = true, optional = true}
31-
32-
[package.metadata.cargo-machete]
33-
ignored = [
34-
"tracing" # needed for `internal-logs`
35-
]
3630

3731
[lints]
3832
workspace = true

opentelemetry-jaeger-propagator/Cargo.toml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -24,19 +24,13 @@ rustdoc-args = ["--cfg", "docsrs"]
2424
opentelemetry = { version = "0.29", default-features = false, features = [
2525
"trace",
2626
], path = "../opentelemetry" }
27-
tracing = {workspace = true, optional = true} # optional for opentelemetry internal logging
2827

2928
[dev-dependencies]
3029
opentelemetry = { features = ["testing"], path = "../opentelemetry" }
3130

3231
[features]
3332
default = ["internal-logs"]
34-
internal-logs = ["tracing"]
35-
36-
[package.metadata.cargo-machete]
37-
ignored = [
38-
"tracing" # needed for `internal-logs`
39-
]
33+
internal-logs = ["opentelemetry/internal-logs"]
4034

4135
[lints]
4236
workspace = true

opentelemetry-proto/Cargo.toml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,7 @@ zpages = ["trace"]
4646
testing = ["opentelemetry/testing"]
4747

4848
# add ons
49-
internal-logs = ["tracing"]
49+
internal-logs = ["opentelemetry/internal-logs"]
5050
with-schemars = ["schemars"]
5151
with-serde = ["serde", "hex", "base64"]
5252

@@ -58,7 +58,6 @@ opentelemetry_sdk = { version = "0.29", default-features = false, path = "../ope
5858
schemars = { workspace = true, optional = true }
5959
serde = { workspace = true, optional = true, features = ["serde_derive"] }
6060
hex = { workspace = true, optional = true }
61-
tracing = {workspace = true, optional = true} # optional for opentelemetry internal logging
6261
base64 = { workspace = true, optional = true }
6362

6463
[dev-dependencies]
@@ -68,10 +67,5 @@ prost-build = { workspace = true }
6867
tempfile = { workspace = true }
6968
serde_json = { workspace = true }
7069

71-
[package.metadata.cargo-machete]
72-
ignored = [
73-
"tracing" # needed for `internal-logs`
74-
]
75-
7670
[lints]
7771
workspace = true

opentelemetry-sdk/Cargo.toml

Lines changed: 1 addition & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ url = { workspace = true, optional = true }
2626
tokio = { workspace = true, features = ["rt", "time"], optional = true }
2727
tokio-stream = { workspace = true, optional = true }
2828
http = { workspace = true, optional = true }
29-
tracing = {workspace = true, optional = true}
3029

3130
[package.metadata.docs.rs]
3231
all-features = true
@@ -51,19 +50,14 @@ testing = ["opentelemetry/testing", "trace", "metrics", "logs", "rt-tokio", "rt-
5150
experimental_async_runtime = []
5251
rt-tokio = ["tokio", "tokio-stream", "experimental_async_runtime"]
5352
rt-tokio-current-thread = ["tokio", "tokio-stream", "experimental_async_runtime"]
54-
internal-logs = ["tracing"]
53+
internal-logs = ["opentelemetry/internal-logs"]
5554
experimental_metrics_periodicreader_with_async_runtime = ["metrics", "experimental_async_runtime"]
5655
spec_unstable_metrics_views = ["metrics"]
5756
experimental_logs_batch_log_processor_with_async_runtime = ["logs", "experimental_async_runtime"]
5857
experimental_logs_concurrent_log_processor = ["logs"]
5958
experimental_trace_batch_span_processor_with_async_runtime = ["trace", "experimental_async_runtime"]
6059
experimental_metrics_disable_name_validation = ["metrics"]
6160

62-
[package.metadata.cargo-machete]
63-
ignored = [
64-
"tracing" # needed for `internal-logs`
65-
]
66-
6761
[[bench]]
6862
name = "context"
6963
harness = false

opentelemetry/CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,8 @@ These methods allow SDK components, exporters, and processors to temporarily
2323
disable telemetry generation during their internal operations, ensuring more
2424
predictable and efficient observability pipelines.
2525

26+
- re-export `tracing` for `internal-logs` feature to remove the need of adding `tracing` as a dependency
27+
2628
## 0.29.0
2729

2830
Released 2025-Mar-21

opentelemetry/src/global/internal_logging.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ macro_rules! otel_info {
2626
(name: $name:expr $(,)?) => {
2727
#[cfg(feature = "internal-logs")]
2828
{
29-
tracing::info!( name: $name, target: env!("CARGO_PKG_NAME"), name = $name, "");
29+
$crate::_private::info!( name: $name, target: env!("CARGO_PKG_NAME"), name = $name, "");
3030
}
3131

3232
#[cfg(test)]
@@ -42,7 +42,7 @@ macro_rules! otel_info {
4242
(name: $name:expr, $($key:ident = $value:expr),+ $(,)?) => {
4343
#[cfg(feature = "internal-logs")]
4444
{
45-
tracing::info!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, $($key = $value),+, "");
45+
$crate::_private::info!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, $($key = $value),+, "");
4646
}
4747

4848
#[cfg(test)]
@@ -77,7 +77,7 @@ macro_rules! otel_warn {
7777
(name: $name:expr $(,)?) => {
7878
#[cfg(feature = "internal-logs")]
7979
{
80-
tracing::warn!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, "");
80+
$crate::_private::warn!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, "");
8181
}
8282

8383
#[cfg(test)]
@@ -93,7 +93,7 @@ macro_rules! otel_warn {
9393
(name: $name:expr, $($key:ident = $value:expr),+ $(,)?) => {
9494
#[cfg(feature = "internal-logs")]
9595
{
96-
tracing::warn!(name: $name,
96+
$crate::_private::warn!(name: $name,
9797
target: env!("CARGO_PKG_NAME"),
9898
name = $name,
9999
$($key = {
@@ -135,7 +135,7 @@ macro_rules! otel_debug {
135135
(name: $name:expr $(,)?) => {
136136
#[cfg(feature = "internal-logs")]
137137
{
138-
tracing::debug!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, "");
138+
$crate::_private::debug!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, "");
139139
}
140140

141141
#[cfg(test)]
@@ -151,7 +151,7 @@ macro_rules! otel_debug {
151151
(name: $name:expr, $($key:ident = $value:expr),+ $(,)?) => {
152152
#[cfg(feature = "internal-logs")]
153153
{
154-
tracing::debug!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, $($key = $value),+, "");
154+
$crate::_private::debug!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, $($key = $value),+, "");
155155
}
156156

157157
#[cfg(test)]
@@ -186,7 +186,7 @@ macro_rules! otel_error {
186186
(name: $name:expr $(,)?) => {
187187
#[cfg(feature = "internal-logs")]
188188
{
189-
tracing::error!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, "");
189+
$crate::_private::error!(name: $name, target: env!("CARGO_PKG_NAME"), name = $name, "");
190190
}
191191

192192
#[cfg(test)]
@@ -202,7 +202,7 @@ macro_rules! otel_error {
202202
(name: $name:expr, $($key:ident = $value:expr),+ $(,)?) => {
203203
#[cfg(feature = "internal-logs")]
204204
{
205-
tracing::error!(name: $name,
205+
$crate::_private::error!(name: $name,
206206
target: env!("CARGO_PKG_NAME"),
207207
name = $name,
208208
$($key = {

opentelemetry/src/lib.rs

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -299,3 +299,9 @@ pub mod time {
299299
SystemTime::UNIX_EPOCH + std::time::Duration::from_millis(js_sys::Date::now() as u64)
300300
}
301301
}
302+
303+
#[doc(hidden)]
304+
pub mod _private {
305+
#[cfg(feature = "internal-logs")]
306+
pub use tracing::{debug, error, info, warn}; // re-export
307+
}

0 commit comments

Comments
 (0)