Skip to content

Commit bd5be87

Browse files
committed
revert observedtime to optional
1 parent 6df79c0 commit bd5be87

File tree

4 files changed

+11
-23
lines changed

4 files changed

+11
-23
lines changed

opentelemetry-proto/src/transform/logs.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ pub mod tonic {
8383

8484
LogRecord {
8585
time_unix_nano: log_record.timestamp.map(to_nanos).unwrap_or_default(),
86-
observed_time_unix_nano: to_nanos(log_record.observed_timestamp),
86+
observed_time_unix_nano: to_nanos(log_record.observed_timestamp.unwrap()),
8787
severity_number: severity_number.into(),
8888
severity_text: log_record.severity_text.map(Into::into).unwrap_or_default(),
8989
body: log_record.body.map(Into::into),

opentelemetry-sdk/src/logs/log_emitter.rs

+4-1
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,8 @@ use opentelemetry::{
1313
#[cfg(feature = "logs_level_enabled")]
1414
use opentelemetry::logs::Severity;
1515

16-
use std::sync::atomic::AtomicBool;
1716
use std::{borrow::Cow, sync::Arc};
17+
use std::{sync::atomic::AtomicBool, time::SystemTime};
1818

1919
use once_cell::sync::Lazy;
2020

@@ -242,6 +242,9 @@ impl opentelemetry::logs::Logger for Logger {
242242
if let Some(ref trace_context) = trace_context {
243243
cloned_record.trace_context = Some(trace_context.clone());
244244
}
245+
if cloned_record.observed_timestamp.is_none() {
246+
cloned_record.observed_timestamp = Some(SystemTime::now());
247+
}
245248
let data = LogData {
246249
record: cloned_record,
247250
instrumentation: self.instrumentation_library().clone(),

opentelemetry-sdk/src/logs/record.rs

+4-19
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ use opentelemetry::{
55
};
66
use std::{borrow::Cow, time::SystemTime};
77

8-
#[derive(Debug, Clone)]
8+
#[derive(Debug, Default, Clone)]
99
#[non_exhaustive]
1010
/// LogRecord represents all data carried by a log record, and
1111
/// is provided to `LogExporter`s as input.
@@ -17,7 +17,7 @@ pub struct LogRecord {
1717
pub timestamp: Option<SystemTime>,
1818

1919
/// Timestamp for when the record was observed by OpenTelemetry
20-
pub observed_timestamp: SystemTime,
20+
pub observed_timestamp: Option<SystemTime>,
2121

2222
/// Trace context for logs associated with spans
2323
pub trace_context: Option<TraceContext>,
@@ -34,21 +34,6 @@ pub struct LogRecord {
3434
pub attributes: Option<Vec<(Key, AnyValue)>>,
3535
}
3636

37-
impl Default for LogRecord {
38-
fn default() -> Self {
39-
LogRecord {
40-
event_name: None,
41-
timestamp: None,
42-
observed_timestamp: SystemTime::now(),
43-
trace_context: None,
44-
severity_text: None,
45-
severity_number: None,
46-
body: None,
47-
attributes: None,
48-
}
49-
}
50-
}
51-
5237
impl opentelemetry::logs::LogRecord for LogRecord {
5338
fn set_event_name<T>(&mut self, name: T)
5439
where
@@ -62,7 +47,7 @@ impl opentelemetry::logs::LogRecord for LogRecord {
6247
}
6348

6449
fn set_observed_timestamp(&mut self, timestamp: SystemTime) {
65-
self.observed_timestamp = timestamp;
50+
self.observed_timestamp = Some(timestamp);
6651
}
6752

6853
fn set_severity_text(&mut self, severity_text: Cow<'static, str>) {
@@ -137,7 +122,7 @@ mod tests {
137122
let mut log_record = LogRecord::default();
138123
let now = SystemTime::now();
139124
log_record.set_observed_timestamp(now);
140-
assert_eq!(log_record.observed_timestamp, now);
125+
assert_eq!(log_record.observed_timestamp, Some(now));
141126
}
142127

143128
#[test]

opentelemetry-stdout/src/logs/transform.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -125,8 +125,8 @@ impl From<opentelemetry_sdk::export::logs::LogData> for LogRecord {
125125
.unwrap_or_default(),
126126
time_unix_nano: value.record.timestamp,
127127
time: value.record.timestamp,
128-
observed_time_unix_nano: value.record.observed_timestamp,
129-
observed_time: value.record.observed_timestamp,
128+
observed_time_unix_nano: value.record.observed_timestamp.unwrap(),
129+
observed_time: value.record.observed_timestamp.unwrap(),
130130
severity_number: value
131131
.record
132132
.severity_number

0 commit comments

Comments
 (0)