// Copyright Epic Games, Inc. All Rights Reserved. using OpenTelemetry.Trace; namespace HordeServer.Utilities { /// /// Extensions to handle Horde specific data types in the OpenTelemetry library /// public static class OpenTelemetryExtensions { /// Set a key:value tag on the span /// This span instance, for chaining public static TelemetrySpan SetAttribute(this TelemetrySpan span, string key, int? value) { if (value != null) { span.SetAttribute(key, value.Value); } return span; } /// Set a key:value tag on the span /// This span instance, for chaining public static TelemetrySpan SetAttribute(this TelemetrySpan span, string key, DateTimeOffset? value) { if (value != null) { span.SetAttribute(key, value.ToString()); } return span; } } }