@@ -406,7 +406,7 @@ def start_span(
406
406
on_error : on_error ,
407
407
resource : resource ,
408
408
service : service ,
409
- tags : resolve_tags ( tags ) ,
409
+ tags : resolve_tags ( tags , service ) ,
410
410
type : type ,
411
411
id : id ,
412
412
&block
@@ -420,7 +420,7 @@ def start_span(
420
420
resource : resource ,
421
421
service : service ,
422
422
start_time : start_time ,
423
- tags : resolve_tags ( tags ) ,
423
+ tags : resolve_tags ( tags , service ) ,
424
424
type : type ,
425
425
id : id
426
426
)
@@ -432,15 +432,20 @@ def start_span(
432
432
end
433
433
# rubocop:enable Lint/UnderscorePrefixedVariableName
434
434
435
- def resolve_tags ( tags )
436
- if @tags . any? && tags
437
- # Combine default tags with provided tags,
438
- # preferring provided tags.
439
- @tags . merge ( tags )
440
- else
441
- # Use provided tags or default tags if none.
442
- tags || @tags . dup
435
+ def resolve_tags ( tags , service )
436
+ merged_tags = if @tags . any? && tags
437
+ # Combine default tags with provided tags,
438
+ # preferring provided tags.
439
+ @tags . merge ( tags )
440
+ else
441
+ # Use provided tags or default tags if none.
442
+ tags || @tags . dup
443
+ end
444
+ # Remove version tag if service is not the default service
445
+ if merged_tags . key? ( Core ::Environment ::Ext ::TAG_VERSION ) && service != @default_service
446
+ merged_tags . delete ( Core ::Environment ::Ext ::TAG_VERSION )
443
447
end
448
+ merged_tags
444
449
end
445
450
446
451
# Manually activate and deactivate the trace, when the span completes.
0 commit comments