Skip to content

Commit a7c215b

Browse files
Copilotcijothomas
andcommitted
Fix logs feature dependency on trace feature
Co-authored-by: cijothomas <[email protected]>
1 parent 8953d59 commit a7c215b

File tree

5 files changed

+24
-9
lines changed

5 files changed

+24
-9
lines changed

opentelemetry-sdk/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ pprof = { version = "0.14", features = ["flamegraph", "criterion"] }
4242
default = ["trace", "metrics", "logs", "internal-logs"]
4343
trace = ["opentelemetry/trace", "rand", "percent-encoding"]
4444
jaeger_remote_sampler = ["trace", "opentelemetry-http", "http", "serde", "serde_json", "url", "experimental_async_runtime"]
45-
logs = ["opentelemetry/logs", "opentelemetry/trace", "serde_json"]
45+
logs = ["opentelemetry/logs", "serde_json"]
4646
spec_unstable_logs_enabled = ["logs", "opentelemetry/spec_unstable_logs_enabled"]
4747
metrics = ["opentelemetry/metrics"]
4848
testing = ["opentelemetry/testing", "trace", "metrics", "logs", "rt-tokio", "rt-tokio-current-thread", "tokio/macros", "tokio/rt-multi-thread"]

opentelemetry-sdk/src/logs/in_memory_exporter.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ impl InMemoryLogExporterBuilder {
132132

133133
/// If set, the records will not be [`InMemoryLogExporter::reset`] on shutdown.
134134
#[cfg(test)]
135+
#[allow(dead_code)]
135136
pub(crate) fn keep_records_on_shutdown(self) -> Self {
136137
Self {
137138
reset_on_shutdown: false,

opentelemetry-sdk/src/logs/logger.rs

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,9 @@
1-
use super::{SdkLogRecord, SdkLoggerProvider, TraceContext};
2-
use opentelemetry::{trace::TraceContextExt, Context, InstrumentationScope};
1+
use super::{SdkLogRecord, SdkLoggerProvider};
2+
#[cfg(feature = "trace")]
3+
use super::TraceContext;
4+
use opentelemetry::{Context, InstrumentationScope};
5+
#[cfg(feature = "trace")]
6+
use opentelemetry::trace::TraceContextExt;
37

48
#[cfg(feature = "spec_unstable_logs_enabled")]
59
use opentelemetry::logs::Severity;
@@ -37,6 +41,7 @@ impl opentelemetry::logs::Logger for SdkLogger {
3741

3842
//let mut log_record = record;
3943
if record.trace_context.is_none() {
44+
#[cfg(feature = "trace")]
4045
Context::map_current(|cx| {
4146
cx.has_active_span().then(|| {
4247
record.trace_context = Some(TraceContext::from(cx.span().span_context()))

opentelemetry-sdk/src/logs/logger_provider.rs

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -284,20 +284,25 @@ impl LoggerProviderBuilder {
284284
#[cfg(test)]
285285
mod tests {
286286
use crate::{
287-
logs::{InMemoryLogExporter, LogBatch, SdkLogRecord, TraceContext},
287+
logs::{InMemoryLogExporter, LogBatch, SdkLogRecord},
288288
resource::{
289289
SERVICE_NAME, TELEMETRY_SDK_LANGUAGE, TELEMETRY_SDK_NAME, TELEMETRY_SDK_VERSION,
290290
},
291-
trace::SdkTracerProvider,
292291
Resource,
293292
};
293+
#[cfg(feature = "trace")]
294+
use crate::logs::TraceContext;
295+
#[cfg(feature = "trace")]
296+
use crate::trace::SdkTracerProvider;
294297

295298
use super::*;
299+
#[cfg(feature = "trace")]
296300
use opentelemetry::trace::{SpanId, TraceId, Tracer as _, TracerProvider};
297301
use opentelemetry::{
298302
logs::{AnyValue, LogRecord as _, Logger, LoggerProvider},
299-
trace::TraceContextExt,
300303
};
304+
#[cfg(feature = "trace")]
305+
use opentelemetry::trace::TraceContextExt;
301306
use opentelemetry::{Key, KeyValue, Value};
302307
use std::fmt::{Debug, Formatter};
303308
use std::sync::atomic::AtomicU64;
@@ -591,6 +596,7 @@ mod tests {
591596
}
592597

593598
#[test]
599+
#[cfg(feature = "trace")]
594600
fn trace_context_test() {
595601
let exporter = InMemoryLogExporter::default();
596602

@@ -607,8 +613,8 @@ mod tests {
607613
tracer.in_span("test-span", |cx| {
608614
let ambient_ctxt = cx.span().span_context().clone();
609615
let explicit_ctxt = TraceContext {
610-
trace_id: TraceId::from_u128(13),
611-
span_id: SpanId::from_u64(14),
616+
trace_id: TraceId::from(13),
617+
span_id: SpanId::from(14),
612618
trace_flags: None,
613619
};
614620

opentelemetry-sdk/src/logs/record.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
use crate::growable_array::GrowableArray;
22
use opentelemetry::{
33
logs::{AnyValue, Severity},
4-
trace::{SpanContext, SpanId, TraceFlags, TraceId},
4+
SpanId, TraceFlags, TraceId,
55
Key,
66
};
7+
#[cfg(feature = "trace")]
8+
use opentelemetry::trace::SpanContext;
79
use std::{borrow::Cow, time::SystemTime};
810

911
// According to a Go-specific study mentioned on https://go.dev/blog/slog,
@@ -216,6 +218,7 @@ pub struct TraceContext {
216218
pub trace_flags: Option<TraceFlags>,
217219
}
218220

221+
#[cfg(feature = "trace")]
219222
impl From<&SpanContext> for TraceContext {
220223
fn from(span_context: &SpanContext) -> Self {
221224
TraceContext {

0 commit comments

Comments
 (0)