feat(scripting): ScriptLogTopicSink — script LogEvent → ScriptLogEntry → publisher

This commit is contained in:
Joseph Doherty
2026-06-10 11:38:54 -04:00
parent 12423899aa
commit 14fe88fc80
5 changed files with 292 additions and 0 deletions
@@ -28,6 +28,18 @@ public sealed class ScriptLoggerFactory
/// <summary>Structured property name the enricher binds. Stable for log filtering.</summary>
public const string ScriptNameProperty = "ScriptName";
/// <summary>Structured property name carrying the Script row identifier (<c>Script.ScriptId</c>).</summary>
public const string ScriptIdProperty = "ScriptId";
/// <summary>Structured property name carrying the VirtualTag identifier, when the script runs in a virtual-tag context.</summary>
public const string VirtualTagIdProperty = "VirtualTagId";
/// <summary>Structured property name carrying the ScriptedAlarm identifier, when the script runs in an alarm context.</summary>
public const string AlarmIdProperty = "AlarmId";
/// <summary>Structured property name carrying the Equipment identifier for per-equipment script evaluations.</summary>
public const string EquipmentIdProperty = "EquipmentId";
private readonly ILogger _rootLogger;
/// <summary>Initializes a new instance of the <see cref="ScriptLoggerFactory"/> class.</summary>