Files
git.stella-ops.org/src/__Libraries/StellaOps.Provcache/ProvcacheTelemetry.Activities.Mark.cs

38 lines
1.2 KiB
C#

using System.Diagnostics;
namespace StellaOps.Provcache;
public static partial class ProvcacheTelemetry
{
/// <summary>
/// Mark an activity as a cache hit.
/// </summary>
/// <param name="activity">The activity to mark.</param>
/// <param name="source">The source of the hit (valkey, postgres).</param>
public static void MarkCacheHit(Activity? activity, string source)
{
activity?.SetTag("provcache.result", ResultHit);
activity?.SetTag("provcache.source", source);
}
/// <summary>
/// Mark an activity as a cache miss.
/// </summary>
/// <param name="activity">The activity to mark.</param>
public static void MarkCacheMiss(Activity? activity)
{
activity?.SetTag("provcache.result", ResultMiss);
}
/// <summary>
/// Mark an activity as having an error.
/// </summary>
/// <param name="activity">The activity to mark.</param>
/// <param name="errorMessage">The error message.</param>
public static void MarkError(Activity? activity, string errorMessage)
{
activity?.SetStatus(ActivityStatusCode.Error, errorMessage);
activity?.SetTag("provcache.result", ResultError);
}
}