feat(telemetry): export the site script compile-cache eviction counter as a Meter (ScadaBridge#68)

SiteScriptCompileCache now records each eviction sweep on scadabridge.site.script_compile_cache.evictions
(ScadaBridgeTelemetry). It rides the existing ZB.MOM.WW.ScadaBridge meter, which is already in
SiteServiceRegistration.ObservedMeters, so no new allowlist entry is needed; a Host test pins that
the meter stays allowlisted.
This commit is contained in:
Joseph Doherty
2026-11-09 12:08:25 -05:00
parent e2b15bd520
commit 79957c4b96
4 changed files with 59 additions and 0 deletions
@@ -245,6 +245,17 @@ public class SiteLocalDbWiringTests : IDisposable
Assert.Contains(LocalDbMetrics.MeterName, SiteServiceRegistration.ObservedMeters);
}
/// <summary>Verifies that the ScadaBridge application meter (carrying the compile-cache eviction counter) is exported.</summary>
[Fact]
public void Site_Telemetry_Allowlists_TheScadaBridgeMeter()
{
// ScadaBridge#68: scadabridge.site.script_compile_cache.evictions lives on this meter; an
// unlisted meter is dropped silently (ZbTelemetryOptions.Meters is an allowlist).
Assert.Contains(
ZB.MOM.WW.ScadaBridge.Commons.Observability.ScadaBridgeTelemetry.MeterName,
SiteServiceRegistration.ObservedMeters);
}
/// <summary>Verifies that the Phase 2 tables are created in the consolidated LocalDb file.</summary>
[Fact]
public void Site_LocalDb_CreatesThePhase2Tables_InTheConsolidatedFile()