<PackageReference Include="System.Diagnostics.DiagnosticSource" Version="10.0.1" />

System.Diagnostics.Activity

public class Activity : IDisposable
Represents an operation with context to be used for logging.
namespace System.Diagnostics { public class Activity : IDisposable { public struct Enumerator<[System.Runtime.CompilerServices.Nullable(2)] T> { public ref T Current { get; } public Enumerator<T> GetEnumerator(); public bool MoveNext(); } public static bool ForceDefaultIdFormat { get; set; } public ActivityStatusCode Status { get; } public string StatusDescription { get; } public bool HasRemoteParent { get; } public static Activity Current { get; set; } public ActivityKind Kind { get; } public string OperationName { get; } public string DisplayName { get; set; } public ActivitySource Source { get; } public Activity Parent { get; } public TimeSpan Duration { get; } public DateTime StartTimeUtc { get; } public string Id { get; } public string ParentId { get; } public string RootId { get; } public IEnumerable<KeyValuePair<string, string>> Tags { get; } public IEnumerable<KeyValuePair<string, object>> TagObjects { get; } public IEnumerable<ActivityEvent> Events { get; } public IEnumerable<ActivityLink> Links { get; } public IEnumerable<KeyValuePair<string, string>> Baggage { get; } public ActivityContext Context { get; } public string TraceStateString { get; set; } public ActivitySpanId SpanId { get; } public ActivityTraceId TraceId { get; } public bool Recorded { get; } public bool IsAllDataRequested { get; set; } public ActivityTraceFlags ActivityTraceFlags { get; set; } public ActivitySpanId ParentSpanId { get; } public static Func<ActivityTraceId> TraceIdGenerator { get; set; } public static ActivityIdFormat DefaultIdFormat { get; set; } public bool IsStopped { get; } public ActivityIdFormat IdFormat { get; } public static event EventHandler<ActivityChangedEventArgs> CurrentChanged; public Activity SetStatus(ActivityStatusCode code, string description = null); public Enumerator<KeyValuePair<string, object>> EnumerateTagObjects(); public Enumerator<ActivityEvent> EnumerateEvents(); public Enumerator<ActivityLink> EnumerateLinks(); public string GetBaggageItem(string key); public object GetTagItem(string key); public Activity(string operationName); public Activity AddTag(string key, string value); public Activity AddTag(string key, object value); public Activity SetTag(string key, object value); public Activity AddEvent(ActivityEvent e); public Activity AddException(Exception exception, ref TagList tags = default(ref TagList), DateTimeOffset timestamp = default(DateTimeOffset)); public Activity AddLink(ActivityLink link); public Activity AddBaggage(string key, string value); public Activity SetBaggage(string key, string value); public Activity SetParentId(string parentId); public Activity SetParentId(ActivityTraceId traceId, ActivitySpanId spanId, ActivityTraceFlags activityTraceFlags = ActivityTraceFlags.None); public Activity SetStartTime(DateTime startTimeUtc); public Activity SetEndTime(DateTime endTimeUtc); public Activity Start(); public void Stop(); public Activity SetIdFormat(ActivityIdFormat format); public void Dispose(); protected virtual void Dispose(bool disposing); public void SetCustomProperty(string propertyName, object propertyValue); public object GetCustomProperty(string propertyName); } }