Skip to content

Commit 605bebc

Browse files
committed
feat(jobs): support backend instrumentation defaults
1 parent 1162134 commit 605bebc

2 files changed

Lines changed: 12 additions & 6 deletions

File tree

‎sentry-ruby/lib/sentry/job_extensions/consumer.rb‎

Lines changed: 10 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,12 +14,10 @@ def initialize(integration:, origin:, registry: Sentry.job_extensions)
1414
@origin = origin
1515
end
1616

17-
def apply_scope_data(scope, job)
17+
def apply_scope_data(scope, job, default_scope_data: {})
18+
apply_scope_values(scope, default_scope_data)
1819
data = registry.call(registry.for(job), :scope_data, job: job)
19-
scope.set_contexts(data[:contexts]) if data[:contexts]
20-
scope.set_tags(data[:tags]) if data[:tags]
21-
scope.set_extras(data[:extra]) if data[:extra]
22-
scope.set_user(data[:user]) if data[:user]
20+
apply_scope_values(scope, data)
2321
end
2422

2523
def transaction_name(job)
@@ -102,6 +100,13 @@ def capture_exception(job, exception, contexts: {}, tags: {}, extra: {})
102100

103101
private
104102

103+
def apply_scope_values(scope, data)
104+
scope.set_contexts(data[:contexts]) if data[:contexts]
105+
scope.set_tags(data[:tags]) if data[:tags]
106+
scope.set_extras(data[:extra]) if data[:extra]
107+
scope.set_user(data[:user]) if data[:user]
108+
end
109+
105110
def additive_error_data(data)
106111
scope = Sentry.get_current_scope
107112

‎sentry-ruby/lib/sentry/job_extensions/producer.rb‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ def inject_trace_headers(job, payload, headers)
4242

4343
private
4444

45-
def with_span(job, description:, messaging_data: {}, extension_messaging_keys: nil, retry_count: true, default_retry_count: nil)
45+
def with_span(job, description:, messaging_data: {}, default_messaging_data: {}, extension_messaging_keys: nil, retry_count: true, default_retry_count: nil)
4646
extension = registry.for(job)
4747
span_description = registry.call(extension, :publish_description, job: job) || description
4848

@@ -51,6 +51,7 @@ def with_span(job, description:, messaging_data: {}, extension_messaging_keys: n
5151
span_origin = registry.call(extension, :span_origin, job: job) || origin
5252
span.set_origin(span_origin) if span_origin
5353

54+
set_messaging_data(span, resolve(default_messaging_data))
5455
extension_data = registry.call(extension, :messaging_data, job: job)
5556
extension_data = extension_data.slice(*extension_messaging_keys) if extension_messaging_keys
5657
set_messaging_data(span, extension_data)

0 commit comments

Comments
 (0)