Crate mockforge_chaos

Crate mockforge_chaos 

Source
Expand description

MockForge Chaos Engineering

Provides chaos engineering capabilities including traffic shaping, fault injection, and resilience pattern testing.

Re-exports§

pub use ab_testing::ABTest;
pub use ab_testing::ABTestConfig;
pub use ab_testing::ABTestStats;
pub use ab_testing::ABTestStatus;
pub use ab_testing::ABTestingEngine;
pub use ab_testing::MetricComparison;
pub use ab_testing::MetricType;
pub use ab_testing::SingleMetricComparison;
pub use ab_testing::SuccessCriteria;
pub use ab_testing::TestConclusion;
pub use ab_testing::TestVariant;
pub use ab_testing::VariantMetrics;
pub use ab_testing::VariantResults;
pub use advanced_analytics::AdvancedAnalyticsEngine;
pub use advanced_analytics::Anomaly;
pub use advanced_analytics::AnomalyType as AnalyticsAnomalyType;
pub use advanced_analytics::CorrelationAnalysis;
pub use advanced_analytics::DataPoint;
pub use advanced_analytics::HealthFactor;
pub use advanced_analytics::HealthScore;
pub use advanced_analytics::PredictiveInsight;
pub use advanced_analytics::TrendAnalysis;
pub use advanced_analytics::TrendDirection;
pub use advanced_orchestration::AdvancedOrchestratedScenario;
pub use advanced_orchestration::AdvancedScenarioStep;
pub use advanced_orchestration::Assertion;
pub use advanced_orchestration::Condition;
pub use advanced_orchestration::ConditionalStep;
pub use advanced_orchestration::ExecutionContext;
pub use advanced_orchestration::ExecutionReport;
pub use advanced_orchestration::Hook;
pub use advanced_orchestration::HookAction;
pub use advanced_orchestration::HookType;
pub use advanced_orchestration::OrchestrationLibrary;
pub use advanced_orchestration::RetryConfig;
pub use advanced_orchestration::StepResult;
pub use alerts::Alert;
pub use alerts::AlertHandler;
pub use alerts::AlertManager;
pub use alerts::AlertRule;
pub use alerts::AlertRuleType;
pub use alerts::AlertSeverity;
pub use alerts::AlertType;
pub use analytics::ChaosAnalytics;
pub use analytics::ChaosImpact;
pub use analytics::MetricsBucket;
pub use analytics::TimeBucket;
pub use api::create_chaos_api_router;
pub use api::ProfileManager;
pub use auto_remediation::ApprovalRequest;
pub use auto_remediation::EffectivenessMetrics;
pub use auto_remediation::RemediationAction;
pub use auto_remediation::RemediationConfig;
pub use auto_remediation::RemediationEngine;
pub use auto_remediation::RemediationResult;
pub use auto_remediation::RemediationStats;
pub use auto_remediation::RemediationStatus;
pub use auto_remediation::RiskAssessment as AutoRiskAssessment;
pub use auto_remediation::RiskLevel;
pub use auto_remediation::RollbackData;
pub use auto_remediation::SafetyCheck;
pub use auto_remediation::SystemMetrics;
pub use chaos_mesh::ChaosMeshClient;
pub use chaos_mesh::ChaosMeshExperiment;
pub use chaos_mesh::ExperimentSpec;
pub use chaos_mesh::ExperimentStatus;
pub use chaos_mesh::ExperimentType;
pub use chaos_mesh::NetworkChaosAction;
pub use chaos_mesh::NetworkDelay;
pub use chaos_mesh::NetworkLoss;
pub use chaos_mesh::PodChaosAction;
pub use chaos_mesh::PodSelector;
pub use chaos_mesh::StressConfig;
pub use collaboration::ChangeType;
pub use collaboration::CollaborationChange;
pub use collaboration::CollaborationManager;
pub use collaboration::CollaborationMessage;
pub use collaboration::CollaborationSession;
pub use collaboration::CollaborationUser;
pub use collaboration::CursorPosition;
pub use config::BulkheadConfig;
pub use config::ChaosConfig;
pub use config::CircuitBreakerConfig;
pub use config::CorruptionType;
pub use config::ErrorPattern;
pub use config::FaultInjectionConfig;
pub use config::LatencyConfig;
pub use config::NetworkProfile;
pub use config::RateLimitConfig;
pub use config::TrafficShapingConfig;
pub use dashboard::DashboardManager;
pub use dashboard::DashboardQuery;
pub use dashboard::DashboardStats;
pub use dashboard::DashboardUpdate;
pub use distributed_coordinator::CoordinationMode;
pub use distributed_coordinator::DistributedCoordinator;
pub use distributed_coordinator::DistributedTask;
pub use distributed_coordinator::ExecutionMetrics;
pub use distributed_coordinator::LeaderState;
pub use distributed_coordinator::Node;
pub use distributed_coordinator::NodeExecutionState;
pub use distributed_coordinator::NodeStatus;
pub use distributed_coordinator::TaskStatus;
pub use failure_designer::ConditionOperator;
pub use failure_designer::ConditionType;
pub use failure_designer::FailureCondition;
pub use failure_designer::FailureDesignRule;
pub use failure_designer::FailureDesigner;
pub use failure_designer::FailureTarget;
pub use failure_designer::FailureType;
pub use fault::FaultInjector;
pub use fault::FaultType;
pub use gitops::GitOpsAuth;
pub use gitops::GitOpsConfig;
pub use gitops::GitOpsManager;
pub use gitops::SyncState;
pub use gitops::SyncStatus;
pub use incident_replay::IncidentEvent;
pub use incident_replay::IncidentEventType;
pub use incident_replay::IncidentFormatAdapter;
pub use incident_replay::IncidentReplayGenerator;
pub use incident_replay::IncidentTimeline;
pub use integrations::GrafanaConfig;
pub use integrations::GrafanaIntegration;
pub use integrations::IntegrationConfig;
pub use integrations::IntegrationManager;
pub use integrations::JiraConfig;
pub use integrations::JiraIntegration;
pub use integrations::Notification;
pub use integrations::NotificationResults;
pub use integrations::NotificationSeverity;
pub use integrations::PagerDutyConfig;
pub use integrations::PagerDutyIntegration;
pub use integrations::SlackConfig;
pub use integrations::SlackNotifier;
pub use integrations::TeamsConfig;
pub use integrations::TeamsNotifier;
pub use latency::LatencyInjector;
pub use latency_metrics::LatencyMetricsTracker;
pub use latency_metrics::LatencySample;
pub use latency_metrics::LatencyStats;
pub use metrics::registry as metrics_registry;
pub use metrics::ChaosMetrics;
pub use metrics::CHAOS_METRICS;
pub use middleware::chaos_middleware;
pub use middleware::ChaosMiddleware;
pub use ml_anomaly_detector::Anomaly as MLAnomaly;
pub use ml_anomaly_detector::AnomalyDetector;
pub use ml_anomaly_detector::AnomalyDetectorConfig;
pub use ml_anomaly_detector::AnomalySeverity;
pub use ml_anomaly_detector::AnomalyType as MLAnomalyType;
pub use ml_anomaly_detector::MetricBaseline;
pub use ml_anomaly_detector::TimeSeriesPoint;
pub use ml_assertion_generator::AssertionGenerator;
pub use ml_assertion_generator::AssertionGeneratorConfig;
pub use ml_assertion_generator::AssertionOperator;
pub use ml_assertion_generator::AssertionType;
pub use ml_assertion_generator::ExecutionDataPoint;
pub use ml_assertion_generator::GeneratedAssertion;
pub use ml_assertion_generator::MetricStats;
pub use ml_parameter_optimizer::ExpectedImpact;
pub use ml_parameter_optimizer::OptimizationObjective;
pub use ml_parameter_optimizer::OptimizationRecommendation;
pub use ml_parameter_optimizer::OptimizerConfig;
pub use ml_parameter_optimizer::OrchestrationRun;
pub use ml_parameter_optimizer::ParameterBounds;
pub use ml_parameter_optimizer::ParameterOptimizer;
pub use ml_parameter_optimizer::RunMetrics;
pub use multi_armed_bandit::Arm;
pub use multi_armed_bandit::ArmReport;
pub use multi_armed_bandit::BanditReport;
pub use multi_armed_bandit::BanditStrategy;
pub use multi_armed_bandit::MultiArmedBandit;
pub use multi_armed_bandit::ThompsonSampling;
pub use multi_armed_bandit::TrafficAllocator;
pub use multi_armed_bandit::UCB1;
pub use multi_cluster::ClusterTarget;
pub use multi_cluster::ExecutionStatus;
pub use multi_cluster::MultiClusterOrchestration;
pub use multi_cluster::MultiClusterOrchestrator;
pub use multi_cluster::MultiClusterStatus;
pub use multi_cluster::SyncMode;
pub use multi_tenancy::MultiTenancyError;
pub use multi_tenancy::ResourceQuota;
pub use multi_tenancy::ResourceUsage;
pub use multi_tenancy::Tenant;
pub use multi_tenancy::TenantManager;
pub use multi_tenancy::TenantPermissions;
pub use multi_tenancy::TenantPlan;
pub use observability_api::create_observability_router;
pub use observability_api::ObservabilityState;
pub use plugins::ChaosPlugin;
pub use plugins::CustomFaultPlugin;
pub use plugins::MetricsPlugin;
pub use plugins::PluginCapability;
pub use plugins::PluginConfig;
pub use plugins::PluginContext;
pub use plugins::PluginError;
pub use plugins::PluginHook;
pub use plugins::PluginMetadata;
pub use plugins::PluginRegistry;
pub use plugins::PluginResult;
pub use predictive_remediation::AnomalyDetector as PredictiveAnomalyDetector;
pub use predictive_remediation::DataPoint as PredictiveDataPoint;
pub use predictive_remediation::FailurePrediction;
pub use predictive_remediation::MetricTrend;
pub use predictive_remediation::MetricType as PredictiveMetricType;
pub use predictive_remediation::PredictiveRemediationEngine;
pub use predictive_remediation::TimeSeries;
pub use predictive_remediation::TrendAnalyzer;
pub use predictive_remediation::TrendDirection as PredictiveTrendDirection;
pub use predictive_remediation::TrendReport;
pub use protocols::graphql::GraphQLChaos;
pub use protocols::grpc::GrpcChaos;
pub use protocols::websocket::WebSocketChaos;
pub use rate_limit::RateLimiter;
pub use recommendations::Confidence;
pub use recommendations::EngineConfig;
pub use recommendations::Recommendation;
pub use recommendations::RecommendationCategory;
pub use recommendations::RecommendationEngine;
pub use recommendations::RecommendationSeverity;
pub use reinforcement_learning::AdaptiveRiskAssessor;
pub use reinforcement_learning::QLearningConfig;
pub use reinforcement_learning::RLAgent;
pub use reinforcement_learning::RemediationAction as RLRemediationAction;
pub use reinforcement_learning::RiskAssessment;
pub use reinforcement_learning::SystemState;
pub use resilience::Bulkhead;
pub use resilience::BulkheadError;
pub use resilience::BulkheadGuard;
pub use resilience::BulkheadManager;
pub use resilience::BulkheadMetrics;
pub use resilience::BulkheadStats;
pub use resilience::CircuitBreaker;
pub use resilience::CircuitBreakerManager;
pub use resilience::CircuitBreakerMetrics;
pub use resilience::CircuitState;
pub use resilience::CircuitStats;
pub use resilience::DynamicThresholdAdjuster;
pub use resilience::FallbackHandler;
pub use resilience::HealthCheckIntegration;
pub use resilience::JsonFallbackHandler;
pub use resilience::RetryConfig as ResilienceRetryConfig;
pub use resilience::RetryPolicy;
pub use resilience_api::create_resilience_router;
pub use resilience_api::BulkheadStateResponse;
pub use resilience_api::CircuitBreakerStateResponse;
pub use resilience_api::ResilienceApiState;
pub use scenario_orchestrator::OrchestratedScenario;
pub use scenario_orchestrator::ScenarioOrchestrator;
pub use scenario_orchestrator::ScenarioStep;
pub use scenario_recorder::ChaosEvent;
pub use scenario_recorder::ChaosEventType;
pub use scenario_recorder::RecordedScenario;
pub use scenario_recorder::ScenarioRecorder;
pub use scenario_replay::ReplayOptions;
pub use scenario_replay::ReplaySpeed;
pub use scenario_replay::ScenarioReplayEngine;
pub use scenario_scheduler::ScenarioScheduler;
pub use scenario_scheduler::ScheduleType;
pub use scenario_scheduler::ScheduledScenario;
pub use scenarios::ChaosScenario;
pub use scenarios::PredefinedScenarios;
pub use scenarios::ScenarioEngine;
pub use template_marketplace::CompatibilityInfo;
pub use template_marketplace::OrchestrationTemplate;
pub use template_marketplace::TemplateCategory;
pub use template_marketplace::TemplateMarketplace;
pub use template_marketplace::TemplateReview;
pub use template_marketplace::TemplateSearchFilters;
pub use template_marketplace::TemplateSortBy;
pub use template_marketplace::TemplateStats;
pub use traffic_shaping::TrafficShaper;
pub use version_control::Branch;
pub use version_control::Commit;
pub use version_control::Diff;
pub use version_control::DiffChange;
pub use version_control::DiffChangeType;
pub use version_control::DiffStats;
pub use version_control::VersionControlRepository;

Modules§

ab_testing
A/B testing framework for chaos engineering strategies
advanced_analytics
Advanced analytics engine for chaos engineering
advanced_orchestration
Advanced orchestration features
alerts
Alert system for chaos events
analytics
Chaos analytics and metrics aggregation
api
Management API for chaos engineering
auto_remediation
Auto-remediation engine for chaos recommendations
chaos_mesh
Chaos Mesh Integration
collaboration
Collaborative editing support for orchestrations
config
Chaos engineering configuration
dashboard
Real-time dashboard WebSocket support
distributed_coordinator
Distributed chaos coordination
failure_designer
“What-If” Failure Designer
fault
Fault injection for simulating errors and failures
gitops
GitOps workflow support for chaos orchestrations
incident_replay
Incident Replay - Convert production incident timelines into replayable chaos scenarios
integrations
latency
Latency injection for simulating network delays
latency_metrics
Latency metrics tracking for real-time visualization
metrics
Prometheus metrics for chaos engineering
middleware
Chaos engineering middleware for HTTP
ml_anomaly_detector
ML-based anomaly detection for orchestration patterns
ml_assertion_generator
ML-based assertion generation from historical data
ml_parameter_optimizer
ML-based parameter optimization for chaos scenarios
multi_armed_bandit
multi_cluster
Multi-cluster orchestration support
multi_tenancy
Multi-Tenancy Support
observability_api
Observability API endpoints for the Admin UI
plugins
Chaos Plugin System
predictive_remediation
protocols
Protocol-specific chaos engineering modules
rate_limit
Rate limiting for controlling request throughput
recommendations
AI-powered chaos recommendations
reinforcement_learning
resilience
Advanced resilience patterns: Circuit Breaker and Bulkhead
resilience_api
API endpoints for resilience management
scenario_orchestrator
Scenario orchestration for composing and chaining chaos scenarios
scenario_recorder
Scenario recording and replay system
scenario_replay
Scenario replay engine for reproducing recorded chaos scenarios
scenario_scheduler
Time-based scenario scheduling
scenarios
Chaos engineering scenarios for orchestrating complex failure patterns
template_marketplace
Template Marketplace for orchestration templates
trace_collector
Trace collector for querying traces from Jaeger and OTLP backends
traffic_shaping
Traffic shaping for simulating network conditions
version_control
Version control for orchestrations

Enums§

ChaosError
Chaos engineering errors

Type Aliases§

Result