Skip to content

Commit 8ff330d

Browse files
authored
Marked SetStackTrace with UserStackFrameNumber as obsolete (#5691)
1 parent a412bd7 commit 8ff330d

File tree

2 files changed

+15
-2
lines changed

2 files changed

+15
-2
lines changed

src/NLog/LogEventInfo.cs

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -221,13 +221,14 @@ public int SequenceID
221221
///
222222
/// Gets the stack frame of the method that did the logging.
223223
/// </summary>
224-
[Obsolete("Instead use ${callsite} or CallerMemberName. Marked obsolete on NLog 5.3")]
224+
[Obsolete("Instead use ${callsite} or CallerMemberName. Marked obsolete with NLog 5.3")]
225225
public StackFrame UserStackFrame => CallSiteInformation?.UserStackFrame;
226226

227227
/// <summary>
228228
/// Gets the number index of the stack frame that represents the user
229229
/// code (not the NLog code).
230230
/// </summary>
231+
[Obsolete("Instead use ${callsite} or CallerMemberName. Marked obsolete with NLog 5.4")]
231232
public int UserStackFrameNumber => CallSiteInformation?.UserStackFrameNumberLegacy ?? CallSiteInformation?.UserStackFrameNumber ?? 0;
232233

233234
/// <summary>
@@ -543,11 +544,21 @@ public override string ToString()
543544
return $"Log Event: Logger='{LoggerName}' Level={Level} Message='{FormattedMessage}'";
544545
}
545546

547+
/// <summary>
548+
/// Sets the stack trace for the event info.
549+
/// </summary>
550+
/// <param name="stackTrace">The stack trace.</param>
551+
public void SetStackTrace(StackTrace stackTrace)
552+
{
553+
GetCallSiteInformationInternal().SetStackTrace(stackTrace, default(int?));
554+
}
555+
546556
/// <summary>
547557
/// Sets the stack trace for the event info.
548558
/// </summary>
549559
/// <param name="stackTrace">The stack trace.</param>
550560
/// <param name="userStackFrame">Index of the first user stack frame within the stack trace (Negative means NLog should skip stackframes from System-assemblies).</param>
561+
[Obsolete("Instead use SetStackTrace or SetCallerInfo. Marked obsolete with NLog 5.4")]
551562
public void SetStackTrace(StackTrace stackTrace, int userStackFrame)
552563
{
553564
GetCallSiteInformationInternal().SetStackTrace(stackTrace, userStackFrame >= 0 ? userStackFrame : (int?)null);

src/NLog/NLogTraceListener.cs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -486,9 +486,11 @@ protected virtual void ProcessLogEventInfo(LogLevel logLevel, string loggerName,
486486
ev.Properties.Add("EventID", ResolvedBoxedEventId(eventId.Value));
487487
}
488488

489-
if (stackTrace != null && userFrameIndex >= 0)
489+
if (stackTrace != null)
490490
{
491+
#pragma warning disable CS0618 // Type or member is obsolete
491492
ev.SetStackTrace(stackTrace, userFrameIndex);
493+
#pragma warning restore CS0618 // Type or member is obsolete
492494
}
493495

494496
logger.Log(typeof(System.Diagnostics.Trace), ev);

0 commit comments

Comments
 (0)