Skip to content

Commit

Permalink
Fix NullReferenceException (#102)
Browse files Browse the repository at this point in the history
  • Loading branch information
pengweiqhca authored Nov 30, 2023
1 parent 5cb44fc commit 0146449
Showing 1 changed file with 10 additions and 10 deletions.
20 changes: 10 additions & 10 deletions src/Elastic.Transport/DefaultHttpTransport.cs
Original file line number Diff line number Diff line change
Expand Up @@ -155,7 +155,7 @@ public override Task<TResponse> RequestAsync<TResponse>(
in OpenTelemetryData openTelemetryData,
CancellationToken cancellationToken = default)
=> RequestCoreAsync<TResponse>(true, method, path, data, requestParameters, openTelemetryData, cancellationToken).AsTask();

private async ValueTask<TResponse> RequestCoreAsync<TResponse>(
bool isAsync,
HttpMethod method,
Expand Down Expand Up @@ -185,28 +185,28 @@ private async ValueTask<TResponse> RequestCoreAsync<TResponse>(
Settings.OnRequestDataCreated?.Invoke(requestData);
TResponse response = null;

if (OpenTelemetry.ElasticTransportActivitySource.HasListeners() && activity.IsAllDataRequested)
if (activity is { IsAllDataRequested: true })
{
if (activity.IsAllDataRequested)
OpenTelemetry.SetCommonAttributes(activity, openTelemetryData, Settings);

if (Settings.Authentication is BasicAuthentication basicAuthentication)
activity?.SetTag(SemanticConventions.DbUser, basicAuthentication.Username);
activity.SetTag(SemanticConventions.DbUser, basicAuthentication.Username);

activity?.SetTag(OpenTelemetryAttributes.ElasticTransportProductName, Settings.ProductRegistration.Name);
activity?.SetTag(OpenTelemetryAttributes.ElasticTransportProductVersion, Settings.ProductRegistration.ProductAssemblyVersion);
activity?.SetTag(OpenTelemetryAttributes.ElasticTransportVersion, TransportVersion);
activity?.SetTag(SemanticConventions.UserAgentOriginal, Settings.UserAgent.ToString());
activity.SetTag(OpenTelemetryAttributes.ElasticTransportProductName, Settings.ProductRegistration.Name);
activity.SetTag(OpenTelemetryAttributes.ElasticTransportProductVersion, Settings.ProductRegistration.ProductAssemblyVersion);
activity.SetTag(OpenTelemetryAttributes.ElasticTransportVersion, TransportVersion);
activity.SetTag(SemanticConventions.UserAgentOriginal, Settings.UserAgent.ToString());

if (openTelemetryData.SpanAttributes is not null)
{
foreach (var attribute in requestData.OpenTelemetryData.SpanAttributes)
foreach (var attribute in openTelemetryData.SpanAttributes)
{
activity?.SetTag(attribute.Key, attribute.Value);
activity.SetTag(attribute.Key, attribute.Value);
}
}

activity?.SetTag(SemanticConventions.HttpRequestMethod, requestData.Method.GetStringValue());
activity.SetTag(SemanticConventions.HttpRequestMethod, requestData.Method.GetStringValue());
}

List<PipelineException>? seenExceptions = null;
Expand Down

0 comments on commit 0146449

Please sign in to comment.