feat(scadabridge): emit scadabridge.deployments.applied on deployment success
This commit is contained in:
@@ -7,6 +7,7 @@ using ZB.MOM.WW.ScadaBridge.Commons.Interfaces.Repositories;
|
||||
using ZB.MOM.WW.ScadaBridge.Commons.Interfaces.Services;
|
||||
using ZB.MOM.WW.ScadaBridge.Commons.Messages.Deployment;
|
||||
using ZB.MOM.WW.ScadaBridge.Commons.Messages.Lifecycle;
|
||||
using ZB.MOM.WW.ScadaBridge.Commons.Observability;
|
||||
using ZB.MOM.WW.ScadaBridge.Commons.Types;
|
||||
using ZB.MOM.WW.ScadaBridge.Commons.Types.Enums;
|
||||
using ZB.MOM.WW.ScadaBridge.Commons.Types.Flattening;
|
||||
@@ -244,6 +245,16 @@ public class DeploymentService
|
||||
|
||||
if (response.Status == DeploymentStatus.Success)
|
||||
{
|
||||
// Telemetry: one instance deployment successfully applied to a
|
||||
// site. Counted once per successful deploy operation (the unit
|
||||
// of scadabridge.deployments.applied — one DeployInstanceAsync
|
||||
// deploys exactly one instance to one site). Emitted only on this
|
||||
// confirmed-Success path, so failures, timeouts/retries (the
|
||||
// catch block), and the reconciliation path (which recovers a
|
||||
// PRIOR timed-out apply rather than performing a fresh one) do
|
||||
// not increment it.
|
||||
ScadaBridgeTelemetry.RecordDeploymentApplied();
|
||||
|
||||
// The site has applied the deployment. The post-success
|
||||
// persistence below is best-effort: a failure here must be
|
||||
// logged loudly for operator reconciliation but must not flip
|
||||
|
||||
Reference in New Issue
Block a user