Skip to content

Commit b5545b4

Browse files
committed
Add the logger resource to the log record
1 parent 4588180 commit b5545b4

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

opentelemetry-sdk/src/opentelemetry/sdk/_logs/_internal/__init__.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -338,7 +338,9 @@ def dropped_attributes(self) -> int:
338338
return 0
339339

340340
@classmethod
341-
def _from_api_log_record(cls, record: APILogRecord) -> LogRecord:
341+
def _from_api_log_record(
342+
cls, *, record: APILogRecord, resource: Resource
343+
) -> LogRecord:
342344
return cls(
343345
timestamp=record.timestamp,
344346
observed_timestamp=record.observed_timestamp,
@@ -351,6 +353,7 @@ def _from_api_log_record(cls, record: APILogRecord) -> LogRecord:
351353
body=record.body,
352354
attributes=record.attributes,
353355
event_name=record.event_name,
356+
resource=resource,
354357
)
355358

356359

@@ -701,8 +704,9 @@ def emit(self, record: APILogRecord):
701704
and instrumentation info.
702705
"""
703706
if not isinstance(record, LogRecord):
704-
record = LogRecord._from_api_log_record(record)
705-
record.resource = self._resource
707+
record = LogRecord._from_api_log_record(
708+
record=record, resource=self._resource
709+
)
706710
log_data = LogData(record, self._instrumentation_scope)
707711
self._multi_log_record_processor.on_emit(log_data)
708712

opentelemetry-sdk/tests/logs/test_log_record.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,10 @@ def test_log_record_from_api_log_record(self):
199199
event_name="an.event",
200200
)
201201

202-
record = LogRecord._from_api_log_record(api_log_record)
202+
resource = Resource.create({})
203+
record = LogRecord._from_api_log_record(
204+
record=api_log_record, resource=resource
205+
)
203206

204207
self.assertEqual(record.timestamp, 1)
205208
self.assertEqual(record.observed_timestamp, 2)
@@ -212,3 +215,4 @@ def test_log_record_from_api_log_record(self):
212215
self.assertEqual(record.body, "a log line")
213216
self.assertEqual(record.attributes, {"a": "b"})
214217
self.assertEqual(record.event_name, "an.event")
218+
self.assertEqual(record.resource, resource)

0 commit comments

Comments
 (0)