Skip to content

Commit 6a1364d

Browse files
authored
feat(logs): Add sentry.origin attribute for log handler (#4250)
resolves https://linear.app/getsentry/issue/LOGS-13 Docs: https://develop-docs-git-abhi-logs-sdk-developer-documentation.sentry.dev/sdk/telemetry/logs/#default-attributes > If a log is generated by an SDK integration, the SDK should also set the sentry.origin attribute, as per the [Trace Origin](https://develop-docs-git-abhi-logs-sdk-developer-documentation.sentry.dev/sdk/telemetry/logs/traces/trace-origin/) documentation. It is assumed that logs without a sentry.origin attribute are manually created by the user.
1 parent 7cb0451 commit 6a1364d

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

sentry_sdk/integrations/logging.py

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -358,7 +358,9 @@ def _capture_log_from_record(client, record):
358358
# type: (BaseClient, LogRecord) -> None
359359
scope = sentry_sdk.get_current_scope()
360360
otel_severity_number, otel_severity_text = _python_level_to_otel(record.levelno)
361-
attrs = {} # type: dict[str, str | bool | float | int]
361+
attrs = {
362+
"sentry.origin": "auto.logger.log",
363+
} # type: dict[str, str | bool | float | int]
362364
if isinstance(record.msg, str):
363365
attrs["sentry.message.template"] = record.msg
364366
if record.args is not None:

tests/test_logs.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -283,6 +283,7 @@ def test_logger_integration_warning(sentry_init, capture_envelopes):
283283
assert attrs["sentry.environment"] == "production"
284284
assert attrs["sentry.message.parameters.0"] == "1"
285285
assert attrs["sentry.message.parameters.1"] == "2"
286+
assert attrs["sentry.origin"] == "auto.logger.log"
286287
assert logs[0]["severity_number"] == 13
287288
assert logs[0]["severity_text"] == "warn"
288289

0 commit comments

Comments
 (0)