Skip to content

Service level objective#102

Open
gloskull wants to merge 2 commits into
VeriNode-Labs:mainfrom
gloskull:Service-Level-Objective
Open

Service level objective#102
gloskull wants to merge 2 commits into
VeriNode-Labs:mainfrom
gloskull:Service-Level-Objective

Conversation

@gloskull

Copy link
Copy Markdown

Motivation

  • Provide a shared, deterministic SLO evaluation library so all VeriNode services and off‑chain consumers use the same rules for 99.99% availability and <100 ms P99 critical‑path latency.
  • Surface compact SLO events for monitoring, alerting, canary analysis and runbook automation so alerts and dashboards remain consistent across services.

Description

  • Add src/slo.rs that defines SLO constants, SloTarget, SloWindow, SloEvaluation, and the evaluate_window and publish_slo_evaluation helpers.
  • Implement burn‑rate math (observed_error_bps, burn_rate_x100) and latency violation logic, and encode alert signals as SloSignal::{Healthy,Ticket,Page}.
  • Export the module from the crate by adding pub mod slo; to src/lib.rs and include a human‑facing SLO_MONITORING_RUNBOOK.md describing architecture, alert policy, dashboards, canary checks, and incident response.
  • Add unit tests in src/slo.rs covering default targets, healthy state, ticket threshold, page threshold, and latency‑based paging.

Testing

  • Ran the unit tests for the SLO module with cargo test slo --lib, which executed the SLO test suite and reported 5 passed; 0 failed.

Closes #89

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Service Level Objective Monitoring and Burn Rate Alerts

1 participant