Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ public void ActivityStopped<T>(string sourceName, T activity)
where T : IActivity
{
var dataStreamsManager = Tracer.Instance.TracerManager.DataStreamsManager;
if (Tracer.Instance.Settings.IsIntegrationEnabled(IntegrationId.AzureServiceBus)
if (Tracer.Instance.CurrentTraceSettings.Settings.IsIntegrationEnabled(IntegrationId.AzureServiceBus)
&& dataStreamsManager.IsEnabled
&& activity.Instance is not null
&& activity.OperationName == "Message"
Expand Down
4 changes: 2 additions & 2 deletions tracer/src/Datadog.Trace/AspNet/TracingHttpModule.cs
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,7 @@ private void OnBeginRequest(object sender, EventArgs eventArgs)
{
var tracer = Tracer.Instance;

if (!tracer.Settings.IsIntegrationEnabled(IntegrationId))
if (!tracer.CurrentTraceSettings.Settings.IsIntegrationEnabled(IntegrationId))
{
// integration disabled
return;
Expand Down Expand Up @@ -207,7 +207,7 @@ private void OnBeginRequest(object sender, EventArgs eventArgs)
Headers.Ip.RequestIpExtractor.AddIpToTags(httpRequest.UserHostAddress, httpRequest.IsSecureConnection, key => requestHeaders[key], tracer.Settings.IpHeader, tags);
}

tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: true);
tags.SetAnalyticsSampleRate(IntegrationId, tracer.CurrentTraceSettings.Settings, enabledWithGlobalSetting: true);

// Decorate the incoming HTTP Request with distributed tracing headers
// in case the next processor cannot access the stored Scope
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,8 @@ public static Scope CreateScope(Tracer tracer, string operation, out AwsDynamoDb
{
tags = null;

if (!tracer.Settings.IsIntegrationEnabled(IntegrationId) || !tracer.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
var perTraceSettings = tracer.CurrentTraceSettings;
if (!perTraceSettings.Settings.IsIntegrationEnabled(IntegrationId) || !perTraceSettings.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
{
// integration disabled, don't create a scope, skip this trace
return null;
Expand All @@ -35,8 +36,8 @@ public static Scope CreateScope(Tracer tracer, string operation, out AwsDynamoDb

try
{
tags = tracer.CurrentTraceSettings.Schema.Database.CreateAwsDynamoDbTags();
var serviceName = tracer.CurrentTraceSettings.GetServiceName(DatadogAwsDynamoDbServiceName);
tags = perTraceSettings.Schema.Database.CreateAwsDynamoDbTags();
var serviceName = perTraceSettings.GetServiceName(DatadogAwsDynamoDbServiceName);
scope = tracer.StartActiveInternal(DynamoDbOperationName, parent: parentContext, tags: tags, serviceName: serviceName);
var span = scope.Span;

Expand All @@ -47,7 +48,7 @@ public static Scope CreateScope(Tracer tracer, string operation, out AwsDynamoDb

tags.Service = DynamoDbServiceName;
tags.Operation = operation;
tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: false);
tags.SetAnalyticsSampleRate(IntegrationId, perTraceSettings.Settings, enabledWithGlobalSetting: false);
tracer.TracerManager.Telemetry.IntegrationGeneratedSpan(IntegrationId);
}
catch (Exception ex)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,8 @@ internal static class AwsEventBridgeCommon
{
tags = null;

if (!tracer.Settings.IsIntegrationEnabled(IntegrationId) || !tracer.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
var perTraceSettings = tracer.CurrentTraceSettings;
if (!perTraceSettings.Settings.IsIntegrationEnabled(IntegrationId) || !perTraceSettings.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
{
// integration disabled, don't create a scope, skip this trace
return null;
Expand All @@ -39,8 +40,8 @@ internal static class AwsEventBridgeCommon

try
{
tags = tracer.CurrentTraceSettings.Schema.Messaging.CreateAwsEventBridgeTags(spanKind);
var serviceName = tracer.CurrentTraceSettings.GetServiceName(DatadogAwsEventBridgeServiceName);
tags = perTraceSettings.Schema.Messaging.CreateAwsEventBridgeTags(spanKind);
var serviceName = perTraceSettings.GetServiceName(DatadogAwsEventBridgeServiceName);
var operationName = GetOperationName(tracer);
scope = tracer.StartActiveInternal(operationName, parent: parentContext, tags: tags, serviceName: serviceName);
var span = scope.Span;
Expand All @@ -50,7 +51,7 @@ internal static class AwsEventBridgeCommon

tags.Service = EventBridgeServiceName;
tags.Operation = operation;
tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: false);
tags.SetAnalyticsSampleRate(IntegrationId, perTraceSettings.Settings, enabledWithGlobalSetting: false);
tracer.TracerManager.Telemetry.IntegrationGeneratedSpan(IntegrationId);
}
catch (Exception ex)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,8 @@ internal static class AwsKinesisCommon
{
tags = null;

if (!tracer.Settings.IsIntegrationEnabled(IntegrationId) || !tracer.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
var perTraceSettings = tracer.CurrentTraceSettings;
if (!perTraceSettings.Settings.IsIntegrationEnabled(IntegrationId) || !perTraceSettings.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
{
// integration disabled, don't create a scope, skip this trace
return null;
Expand All @@ -58,9 +59,9 @@ internal static class AwsKinesisCommon

try
{
tags = tracer.CurrentTraceSettings.Schema.Messaging.CreateAwsKinesisTags(spanKind);
string serviceName = tracer.CurrentTraceSettings.GetServiceName(DatadogAwsKinesisServiceName);
string operationName = tracer.CurrentTraceSettings.Schema.Messaging.GetOutboundOperationName(KinesisOperationName);
tags = perTraceSettings.Schema.Messaging.CreateAwsKinesisTags(spanKind);
string serviceName = perTraceSettings.GetServiceName(DatadogAwsKinesisServiceName);
string operationName = perTraceSettings.Schema.Messaging.GetOutboundOperationName(KinesisOperationName);
scope = tracer.StartActiveInternal(operationName, parent: parentContext, tags: tags, serviceName: serviceName);
var span = scope.Span;

Expand All @@ -69,7 +70,7 @@ internal static class AwsKinesisCommon

tags.Service = KinesisServiceName;
tags.Operation = operation;
tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: false);
tags.SetAnalyticsSampleRate(IntegrationId, perTraceSettings.Settings, enabledWithGlobalSetting: false);
tracer.TracerManager.Telemetry.IntegrationGeneratedSpan(IntegrationId);
}
catch (Exception ex)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ internal static class AwsS3Common
{
tags = null;

if (!tracer.Settings.IsIntegrationEnabled(IntegrationId) || !tracer.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
var perTraceSettings = tracer.CurrentTraceSettings;
if (!perTraceSettings.Settings.IsIntegrationEnabled(IntegrationId) || !perTraceSettings.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
{
// integration disabled, don't create a scope, skip this trace
return null;
Expand All @@ -36,8 +37,8 @@ internal static class AwsS3Common
Scope? scope = null;
try
{
tags = tracer.CurrentTraceSettings.Schema.Messaging.CreateAwsS3Tags(spanKind);
var serviceName = tracer.CurrentTraceSettings.GetServiceName(DatadogAwsS3ServiceName);
tags = perTraceSettings.Schema.Messaging.CreateAwsS3Tags(spanKind);
var serviceName = perTraceSettings.GetServiceName(DatadogAwsS3ServiceName);
var operationName = GetOperationName(tracer);
scope = tracer.StartActiveInternal(operationName, parent: parentContext, tags: tags, serviceName: serviceName);
var span = scope.Span;
Expand All @@ -47,7 +48,7 @@ internal static class AwsS3Common

tags.Service = S3ServiceName;
tags.Operation = operation;
tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: false);
tags.SetAnalyticsSampleRate(IntegrationId, perTraceSettings.Settings, enabledWithGlobalSetting: false);
tracer.TracerManager.Telemetry.IntegrationGeneratedSpan(IntegrationId);
}
catch (Exception ex)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,8 @@ internal static class AwsSnsCommon
{
tags = null;

if (!tracer.Settings.IsIntegrationEnabled(IntegrationId) || !tracer.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
var perTraceSettings = tracer.CurrentTraceSettings;
if (!perTraceSettings.Settings.IsIntegrationEnabled(IntegrationId) || !perTraceSettings.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
{
// integration disabled, don't create a scope, skip this trace
return null;
Expand All @@ -38,8 +39,8 @@ internal static class AwsSnsCommon

try
{
tags = tracer.CurrentTraceSettings.Schema.Messaging.CreateAwsSnsTags(spanKind);
var serviceName = tracer.CurrentTraceSettings.GetServiceName(DatadogAwsSnsServiceName);
tags = perTraceSettings.Schema.Messaging.CreateAwsSnsTags(spanKind);
var serviceName = perTraceSettings.GetServiceName(DatadogAwsSnsServiceName);
var operationName = GetOperationName(tracer, spanKind);
scope = tracer.StartActiveInternal(operationName, parent: parentContext, tags: tags, serviceName: serviceName);
var span = scope.Span;
Expand All @@ -49,7 +50,7 @@ internal static class AwsSnsCommon

tags.Service = SnsServiceName;
tags.Operation = operation;
tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: false);
tags.SetAnalyticsSampleRate(IntegrationId, perTraceSettings.Settings, enabledWithGlobalSetting: false);
tracer.TracerManager.Telemetry.IntegrationGeneratedSpan(IntegrationId);
}
catch (Exception ex)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,8 @@ internal static class AwsSqsCommon
{
tags = null;

if (!tracer.Settings.IsIntegrationEnabled(IntegrationId) || !tracer.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
var perTraceSettings = tracer.CurrentTraceSettings;
if (!perTraceSettings.Settings.IsIntegrationEnabled(IntegrationId) || !perTraceSettings.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
{
// integration disabled, don't create a scope, skip this trace
return null;
Expand All @@ -38,8 +39,8 @@ internal static class AwsSqsCommon

try
{
tags = tracer.CurrentTraceSettings.Schema.Messaging.CreateAwsSqsTags(spanKind);
string serviceName = tracer.CurrentTraceSettings.GetServiceName(DatadogAwsSqsServiceName);
tags = perTraceSettings.Schema.Messaging.CreateAwsSqsTags(spanKind);
string serviceName = perTraceSettings.GetServiceName(DatadogAwsSqsServiceName);
string operationName = GetOperationName(tracer, spanKind);
scope = tracer.StartActiveInternal(operationName, parent: parentContext, tags: tags, serviceName: serviceName);
var span = scope.Span;
Expand All @@ -49,7 +50,7 @@ internal static class AwsSqsCommon

tags.Service = SqsServiceName;
tags.Operation = operation;
tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: false);
tags.SetAnalyticsSampleRate(IntegrationId, perTraceSettings.Settings, enabledWithGlobalSetting: false);
tracer.TracerManager.Telemetry.IntegrationGeneratedSpan(IntegrationId);
}
catch (Exception ex)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,8 @@ internal static class AwsStepFunctionsCommon
public static Scope? CreateScope(Tracer tracer, string operation, string spanKind, out AwsStepFunctionsTags? tags, ISpanContext? parentContext = null)
{
tags = null;
if (!tracer.Settings.IsIntegrationEnabled(IntegrationId) || !tracer.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
var perTraceSettings = tracer.CurrentTraceSettings;
if (!perTraceSettings.Settings.IsIntegrationEnabled(IntegrationId) || !perTraceSettings.Settings.IsIntegrationEnabled(AwsConstants.IntegrationId))
{
// integration disabled, don't create a scope, skip this trace
return null;
Expand All @@ -37,8 +38,8 @@ internal static class AwsStepFunctionsCommon

try
{
tags = tracer.CurrentTraceSettings.Schema.Messaging.CreateAwsStepFunctionsTags(spanKind);
var serviceName = tracer.CurrentTraceSettings.GetServiceName(DatadogAwsStepFunctionsServiceName);
tags = perTraceSettings.Schema.Messaging.CreateAwsStepFunctionsTags(spanKind);
var serviceName = perTraceSettings.GetServiceName(DatadogAwsStepFunctionsServiceName);
var operationName = GetOperationName(tracer, spanKind);
scope = tracer.StartActiveInternal(operationName, parent: parentContext, tags: tags, serviceName: serviceName);
var span = scope.Span;
Expand All @@ -48,7 +49,7 @@ internal static class AwsStepFunctionsCommon

tags.Service = StepFunctionsServiceName;
tags.Operation = operation;
tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: false);
tags.SetAnalyticsSampleRate(IntegrationId, perTraceSettings.Settings, enabledWithGlobalSetting: false);
tracer.TracerManager.Telemetry.IntegrationGeneratedSpan(IntegrationId);
}
catch (Exception ex)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@ internal static class DbScopeFactory

private static Scope? CreateDbCommandScope(Tracer tracer, IDbCommand command, IntegrationId integrationId, string dbType, string operationName, string serviceName, ref DbCommandCache.TagsCacheItem tagsFromConnectionString)
{
if (!tracer.Settings.IsIntegrationEnabled(integrationId) || !tracer.Settings.IsIntegrationEnabled(IntegrationId.AdoNet))
var perTraceSettings = tracer.CurrentTraceSettings;
if (!perTraceSettings.Settings.IsIntegrationEnabled(integrationId) || !perTraceSettings.Settings.IsIntegrationEnabled(IntegrationId.AdoNet))
{
// integration disabled, don't create a scope, skip this span
return null;
Expand All @@ -53,15 +54,15 @@ internal static class DbScopeFactory
// We might block the SQL call from RASP depending on the query
VulnerabilitiesModule.OnSqlQuery(commandText, integrationId);

tags = tracer.CurrentTraceSettings.Schema.Database.CreateSqlTags();
tags = perTraceSettings.Schema.Database.CreateSqlTags();
tags.DbType = dbType;
tags.InstrumentationName = IntegrationRegistry.GetName(integrationId);
tags.DbName = tagsFromConnectionString.DbName;
tags.DbUser = tagsFromConnectionString.DbUser;
tags.OutHost = tagsFromConnectionString.OutHost;

tags.SetAnalyticsSampleRate(integrationId, tracer.Settings, enabledWithGlobalSetting: false);
tracer.CurrentTraceSettings.Schema.RemapPeerService(tags);
tags.SetAnalyticsSampleRate(integrationId, perTraceSettings.Settings, enabledWithGlobalSetting: false);
perTraceSettings.Schema.RemapPeerService(tags);

scope = tracer.StartActiveInternal(operationName, tags: tags, serviceName: serviceName);
scope.Span.ResourceName = commandText;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,8 @@ internal class AerospikeCommon

public static Scope CreateScope<TTarget>(Tracer tracer, TTarget target)
{
if (!tracer.Settings.IsIntegrationEnabled(IntegrationId))
var perTraceSettings = tracer.CurrentTraceSettings;
if (!perTraceSettings.Settings.IsIntegrationEnabled(IntegrationId))
{
// integration disabled, don't create a scope, skip this trace
return null;
Expand All @@ -33,8 +34,8 @@ public static Scope CreateScope<TTarget>(Tracer tracer, TTarget target)

try
{
var serviceName = tracer.CurrentTraceSettings.Schema.Database.GetServiceName(DatabaseType);
var tags = tracer.CurrentTraceSettings.Schema.Database.CreateAerospikeTags();
var serviceName = perTraceSettings.Schema.Database.GetServiceName(DatabaseType);
var tags = perTraceSettings.Schema.Database.CreateAerospikeTags();

scope = tracer.StartActiveInternal(OperationName, tags: tags, serviceName: serviceName);
var span = scope.Span;
Expand Down Expand Up @@ -93,8 +94,8 @@ public static Scope CreateScope<TTarget>(Tracer tracer, TTarget target)
span.Type = SpanTypes.Aerospike;
span.ResourceName = ExtractResourceName(target.GetType());

tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: false);
tracer.CurrentTraceSettings.Schema.RemapPeerService(tags);
tags.SetAnalyticsSampleRate(IntegrationId, tracer.CurrentTraceSettings.Settings, enabledWithGlobalSetting: false);
perTraceSettings.Schema.RemapPeerService(tags);
tracer.TracerManager.Telemetry.IntegrationGeneratedSpan(IntegrationId);
}
catch (Exception ex)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ internal static Scope CreateScope(ControllerContextStruct controllerContext)
Span span = null;
// integration enabled, go create a scope!
var tracer = Tracer.Instance;
if (tracer.Settings.IsIntegrationEnabled(IntegrationId))
if (tracer.CurrentTraceSettings.Settings.IsIntegrationEnabled(IntegrationId))
{
var newResourceNamesEnabled = tracer.Settings.RouteTemplateResourceNamesEnabled;
string host = httpContext.Request.Headers.Get("Host");
Expand Down Expand Up @@ -209,7 +209,7 @@ internal static Scope CreateScope(ControllerContextStruct controllerContext)
span.Context.TraceContext?.RootSpan.Tags.SetTag(Tags.HttpRoute, routeUrl);
}

tags.SetAnalyticsSampleRate(IntegrationId, tracer.Settings, enabledWithGlobalSetting: true);
tags.SetAnalyticsSampleRate(IntegrationId, tracer.CurrentTraceSettings.Settings, enabledWithGlobalSetting: true);

if (newResourceNamesEnabled && string.IsNullOrEmpty(httpContext.Items[SharedItems.HttpContextPropagatedResourceNameKey] as string))
{
Expand Down
Loading
Loading