feat: add monitoring system and alerting
- Implemented a basic monitoring system with alerting capabilities. - Introduced `MonitoringAlertingScore` and related traits (`MonitoringSystem`, `ScrapeTarget`, `AlertRule`). - Added `MonitoringAlertingInterpret` to handle the execution of monitoring configurations. - Defined interfaces for Prometheus integration (PrometheusReceiver, PrometheusRule, PrometheusScrapeTarget). - Introduced `CloneBox` trait to enable cloning boxed trait objects. - Refactored Prometheus related traits to require `Debug` implementation. - Implemented basic placeholder logic for Prometheus configuration and alerting. - Updated existing traits to include `Send` and `Sync` where appropriate.
This commit is contained in:
@@ -2,7 +2,7 @@ use harmony::{
|
||||
data::Version,
|
||||
inventory::Inventory,
|
||||
maestro::Maestro,
|
||||
modules::lamp::{LAMPConfig, LAMPScore},
|
||||
modules::{lamp::{LAMPConfig, LAMPScore}, monitoring::monitoring_alerting::MonitoringAlertingScore},
|
||||
topology::{K8sAnywhereTopology, Url},
|
||||
};
|
||||
|
||||
@@ -29,6 +29,8 @@ async fn main() {
|
||||
},
|
||||
};
|
||||
|
||||
let monitoring = MonitoringAlertingScore { alert_channel_configs: todo!() };
|
||||
|
||||
// You can choose the type of Topology you want, we suggest starting with the
|
||||
// K8sAnywhereTopology as it is the most automatic one that enables you to easily deploy
|
||||
// locally, to development environment from a CI, to staging, and to production with settings
|
||||
|
||||
Reference in New Issue
Block a user