Skip to content

Commit 4789474

Browse files
Minor refactor
1 parent 4a4093f commit 4789474

7 files changed

Lines changed: 41 additions & 55 deletions

File tree

tracer/src/Datadog.Trace/Agent/MessagePack/SpanMessagePackFormatter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -614,7 +614,7 @@ private int WriteTags(ref byte[] bytes, int offset, in SpanModel model, ITagProc
614614
// Safety: if the service name equals the default, clear the source — unless it's a
615615
// configuration-driven override (opt.*), which should always be preserved.
616616
var serviceNameSource = span.Context.ServiceNameSource;
617-
if (serviceNameEqualsDefault && serviceNameSource?.StartsWith("opt.") != true)
617+
if (serviceNameEqualsDefault && serviceNameSource?.StartsWith("opt.", StringComparison.Ordinal) != true)
618618
{
619619
serviceNameSource = null;
620620
}

tracer/src/Datadog.Trace/ClrProfiler/AutoInstrumentation/AdoNet/DbScopeFactory.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -302,7 +302,7 @@ private static ServiceNameMetadata GetServiceNameMetadata(Tracer tracer, string
302302
{
303303
if (tracer.CurrentTraceSettings.ServiceNames.TryGetValue(dbTypeName, out var serviceName))
304304
{
305-
return new ServiceNameMetadata(serviceName, "opt.service_mapping");
305+
return new ServiceNameMetadata(serviceName, ServiceNameMetadata.OptServiceMapping);
306306
}
307307

308308
if (DbTypeName != dbTypeName)

tracer/src/Datadog.Trace/Configuration/PerTraceSettings.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ internal ServiceNameMetadata GetServiceNameMetadata(string integrationKey)
4141
{
4242
if (ServiceNames.TryGetValue(integrationKey, out var mappedName))
4343
{
44-
return new ServiceNameMetadata(mappedName, "opt.service_mapping");
44+
return new ServiceNameMetadata(mappedName, ServiceNameMetadata.OptServiceMapping);
4545
}
4646

4747
if (Schema.Version != SchemaVersion.V0 || Schema.RemoveClientServiceNamesEnabled)

tracer/src/Datadog.Trace/Configuration/Schema/ClientSchema.cs

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -38,21 +38,10 @@ public ClientSchema(SchemaVersion version, bool peerServiceTagsEnabled, bool rem
3838
// Calculate service names and source metadata once, to avoid allocations with every call
3939
var useSuffix = version == SchemaVersion.V0 && !removeClientServiceNamesEnabled;
4040

41-
ServiceNameMetadata Resolve(string integrationKey)
42-
{
43-
if (serviceNameMappings is not null && serviceNameMappings.TryGetValue(integrationKey, out var mappedName))
44-
{
45-
return new(mappedName, "opt.service_mapping");
46-
}
47-
48-
var name = useSuffix ? $"{defaultServiceName}-{integrationKey}" : defaultServiceName;
49-
return new(name, name != defaultServiceName ? integrationKey : null);
50-
}
51-
5241
_serviceNameMetadata =
5342
[
54-
Resolve(HttpClientComponent),
55-
Resolve(GrpcClientComponent),
43+
ServiceNameMetadata.Resolve(HttpClientComponent, defaultServiceName, serviceNameMappings, useSuffix),
44+
ServiceNameMetadata.Resolve(GrpcClientComponent, defaultServiceName, serviceNameMappings, useSuffix),
5645
];
5746
}
5847

tracer/src/Datadog.Trace/Configuration/Schema/DatabaseSchema.cs

Lines changed: 6 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -33,25 +33,14 @@ public DatabaseSchema(SchemaVersion version, bool peerServiceTagsEnabled, bool r
3333
// Calculate service names and source metadata once, to avoid allocations with every call
3434
var useSuffix = version == SchemaVersion.V0 && !removeClientServiceNamesEnabled;
3535

36-
ServiceNameMetadata Resolve(string integrationKey)
37-
{
38-
if (serviceNameMappings is not null && serviceNameMappings.TryGetValue(integrationKey, out var mappedName))
39-
{
40-
return new(mappedName, "opt.service_mapping");
41-
}
42-
43-
var name = useSuffix ? $"{defaultServiceName}-{integrationKey}" : defaultServiceName;
44-
return new(name, name != defaultServiceName ? integrationKey : null);
45-
}
46-
4736
_serviceNameMetadata =
4837
[
49-
Resolve("aerospike"),
50-
Resolve("cosmosdb"),
51-
Resolve("couchbase"),
52-
Resolve("elasticsearch"),
53-
Resolve("mongodb"),
54-
Resolve("redis"),
38+
ServiceNameMetadata.Resolve("aerospike", defaultServiceName, serviceNameMappings, useSuffix),
39+
ServiceNameMetadata.Resolve("cosmosdb", defaultServiceName, serviceNameMappings, useSuffix),
40+
ServiceNameMetadata.Resolve("couchbase", defaultServiceName, serviceNameMappings, useSuffix),
41+
ServiceNameMetadata.Resolve("elasticsearch", defaultServiceName, serviceNameMappings, useSuffix),
42+
ServiceNameMetadata.Resolve("mongodb", defaultServiceName, serviceNameMappings, useSuffix),
43+
ServiceNameMetadata.Resolve("redis", defaultServiceName, serviceNameMappings, useSuffix),
5544
];
5645
}
5746

tracer/src/Datadog.Trace/Configuration/Schema/MessagingSchema.cs

Lines changed: 11 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -35,30 +35,19 @@ public MessagingSchema(SchemaVersion version, bool peerServiceTagsEnabled, bool
3535
// Calculate service names and source metadata once, to avoid allocations with every call
3636
var useSuffix = version == SchemaVersion.V0 && !removeClientServiceNamesEnabled;
3737

38-
ServiceNameMetadata Resolve(string integrationKey)
39-
{
40-
if (serviceNameMappings is not null && serviceNameMappings.TryGetValue(integrationKey, out var mappedName))
41-
{
42-
return new(mappedName, "opt.service_mapping");
43-
}
44-
45-
var name = useSuffix ? $"{defaultServiceName}-{integrationKey}" : defaultServiceName;
46-
return new(name, name != defaultServiceName ? integrationKey : null);
47-
}
48-
4938
_serviceNameMetadata =
5039
[
51-
Resolve("aws.eventbridge"),
52-
Resolve("aws.kinesis"),
53-
Resolve("aws.sns"),
54-
Resolve("aws.sqs"),
55-
Resolve("aws.stepfunctions"),
56-
Resolve("azureeventhubs"),
57-
Resolve("azureservicebus"),
58-
Resolve("ibmmq"),
59-
Resolve("kafka"),
60-
Resolve("msmq"),
61-
Resolve("rabbitmq"),
40+
ServiceNameMetadata.Resolve("aws.eventbridge", defaultServiceName, serviceNameMappings, useSuffix),
41+
ServiceNameMetadata.Resolve("aws.kinesis", defaultServiceName, serviceNameMappings, useSuffix),
42+
ServiceNameMetadata.Resolve("aws.sns", defaultServiceName, serviceNameMappings, useSuffix),
43+
ServiceNameMetadata.Resolve("aws.sqs", defaultServiceName, serviceNameMappings, useSuffix),
44+
ServiceNameMetadata.Resolve("aws.stepfunctions", defaultServiceName, serviceNameMappings, useSuffix),
45+
ServiceNameMetadata.Resolve("azureeventhubs", defaultServiceName, serviceNameMappings, useSuffix),
46+
ServiceNameMetadata.Resolve("azureservicebus", defaultServiceName, serviceNameMappings, useSuffix),
47+
ServiceNameMetadata.Resolve("ibmmq", defaultServiceName, serviceNameMappings, useSuffix),
48+
ServiceNameMetadata.Resolve("kafka", defaultServiceName, serviceNameMappings, useSuffix),
49+
ServiceNameMetadata.Resolve("msmq", defaultServiceName, serviceNameMappings, useSuffix),
50+
ServiceNameMetadata.Resolve("rabbitmq", defaultServiceName, serviceNameMappings, useSuffix),
6251
];
6352
}
6453

tracer/src/Datadog.Trace/Configuration/Schema/ServiceNameMetadata.cs

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55

66
#nullable enable
77

8+
using System.Collections.Generic;
9+
810
namespace Datadog.Trace.Configuration.Schema;
911

1012
/// <summary>
@@ -14,6 +16,8 @@ namespace Datadog.Trace.Configuration.Schema;
1416
/// </summary>
1517
internal readonly struct ServiceNameMetadata
1618
{
19+
internal const string OptServiceMapping = "opt.service_mapping";
20+
1721
public ServiceNameMetadata(string serviceName, string? source)
1822
{
1923
ServiceName = serviceName;
@@ -24,6 +28,21 @@ public ServiceNameMetadata(string serviceName, string? source)
2428

2529
public string? Source { get; }
2630

31+
internal static ServiceNameMetadata Resolve(
32+
string integrationKey,
33+
string defaultServiceName,
34+
IReadOnlyDictionary<string, string>? serviceNameMappings,
35+
bool useSuffix)
36+
{
37+
if (serviceNameMappings is not null && serviceNameMappings.TryGetValue(integrationKey, out var mappedName))
38+
{
39+
return new(mappedName, OptServiceMapping);
40+
}
41+
42+
var name = useSuffix ? $"{defaultServiceName}-{integrationKey}" : defaultServiceName;
43+
return new(name, name != defaultServiceName ? integrationKey : null);
44+
}
45+
2746
public void Deconstruct(out string serviceName, out string? source)
2847
{
2948
serviceName = ServiceName;

0 commit comments

Comments
 (0)