in src/Elastic.Transport/Diagnostics/OpenTelemetry/OpenTelemetry.cs [42:68]
internal static void SetCommonAttributes(Activity? activity, ITransportConfiguration settings)
{
if (activity is null)
return;
if (settings.ProductRegistration.DefaultOpenTelemetryAttributes is not null)
{
foreach (var attribute in settings.ProductRegistration.DefaultOpenTelemetryAttributes)
{
activity?.SetTag(attribute.Key, attribute.Value);
}
}
var productSchemaVersion = string.Empty;
foreach (var attribute in activity.TagObjects)
{
if (attribute.Key.Equals(OpenTelemetryAttributes.DbElasticsearchSchemaUrl, StringComparison.Ordinal))
{
if (attribute.Value is string schemaVersion)
productSchemaVersion = schemaVersion;
}
}
// We add the client schema version only when it differs from the product schema version
if (!productSchemaVersion.Equals(OpenTelemetrySchemaVersion, StringComparison.Ordinal))
activity?.SetTag(OpenTelemetryAttributes.ElasticTransportSchemaVersion, OpenTelemetrySchemaVersion);
}