Class ChaosMonkeyConfiguration
java.lang.Object
de.codecentric.spring.boot.chaos.monkey.configuration.ChaosMonkeyConfiguration
@AutoConfiguration
@Conditional(ChaosMonkeyCondition.class)
@EnableConfigurationProperties({ChaosMonkeyProperties.class,AssaultProperties.class,WatcherProperties.class})
@Import({UnleashChaosConfiguration.class,de.codecentric.spring.boot.chaos.monkey.configuration.ChaosMonkeyWebClientConfiguration.class,de.codecentric.spring.boot.chaos.monkey.configuration.ChaosMonkeyRestTemplateConfiguration.class,ChaosMonkeyAdvisorConfiguration.class,ChaosMonkeyOpenApiConfiguration.class})
@EnableScheduling
public class ChaosMonkeyConfiguration
extends Object
-
Constructor Summary
ConstructorsConstructorDescriptionChaosMonkeyConfiguration(ChaosMonkeyProperties chaosMonkeyProperties, WatcherProperties watcherProperties, AssaultProperties assaultProperties) -
Method Summary
Modifier and TypeMethodDescriptionchaosMonkeyJmxEndpoint(ChaosMonkeySettings settings) chaosMonkeyRequestScope(List<ChaosMonkeyRequestAssault> chaosMonkeyAssaults, List<ChaosMonkeyAssault> allAssaults, ChaosToggles chaosToggles, ChaosToggleNameMapper chaosToggleNameMapper, ChaosMonkeySettings settings, MetricEventPublisher publisher) chaosMonkeyRestEndpoint(ChaosMonkeySettings settings, ChaosMonkeyRuntimeScope runtimeScope, ChaosMonkeyScheduler scheduler) chaosMonkeyRuntimeScope(ChaosMonkeySettings settings, List<ChaosMonkeyRuntimeAssault> chaosMonkeyAssaults) chaosMonkeyScheduler(org.springframework.scheduling.TaskScheduler scheduler, List<ChaosMonkeyRuntimeAssault> assaults) org.springframework.scheduling.TaskSchedulerchaosToggleNameMapper(ChaosMonkeyProperties chaosMonkeyProperties) cpuAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher) exceptionAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher) killAppAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher) latencyAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher) memoryAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher)
-
Constructor Details
-
ChaosMonkeyConfiguration
public ChaosMonkeyConfiguration(ChaosMonkeyProperties chaosMonkeyProperties, WatcherProperties watcherProperties, AssaultProperties assaultProperties)
-
-
Method Details
-
chaosMonkeyMetrics
@Bean @ConditionalOnClass(name="io.micrometer.core.instrument.MeterRegistry") public Metrics chaosMonkeyMetrics() -
chaosMonkeyMetricsPublisher
-
chaosMonkeySettings
-
latencyAssault
@Bean @ConditionalOnMissingBean public LatencyAssault latencyAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher) -
exceptionAssault
@Bean @ConditionalOnMissingBean public ExceptionAssault exceptionAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher) -
killAppAssault
@Bean @ConditionalOnMissingBean public KillAppAssault killAppAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher) -
memoryAssault
@Bean @ConditionalOnMissingBean public MemoryAssault memoryAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher) -
cpuAssault
@Bean @ConditionalOnMissingBean public CpuAssault cpuAssault(ChaosMonkeySettings settings, MetricEventPublisher publisher) -
chaosMonkeyRequestScope
@Bean public ChaosMonkeyRequestScope chaosMonkeyRequestScope(List<ChaosMonkeyRequestAssault> chaosMonkeyAssaults, List<ChaosMonkeyAssault> allAssaults, ChaosToggles chaosToggles, ChaosToggleNameMapper chaosToggleNameMapper, ChaosMonkeySettings settings, MetricEventPublisher publisher) -
chaosToggleNameMapper
@Bean @ConditionalOnMissingBean(ChaosToggleNameMapper.class) public ChaosToggleNameMapper chaosToggleNameMapper(ChaosMonkeyProperties chaosMonkeyProperties) -
chaosToggles
-
chaosMonkeyScheduler
@Bean public ChaosMonkeyScheduler chaosMonkeyScheduler(@Qualifier("chaosMonkeyTaskScheduler") org.springframework.scheduling.TaskScheduler scheduler, List<ChaosMonkeyRuntimeAssault> assaults) -
chaosMonkeyTaskScheduler
@Bean(name="chaosMonkeyTaskScheduler") public org.springframework.scheduling.TaskScheduler chaosMonkeyTaskScheduler() -
chaosMonkeyRuntimeScope
@Bean public ChaosMonkeyRuntimeScope chaosMonkeyRuntimeScope(ChaosMonkeySettings settings, List<ChaosMonkeyRuntimeAssault> chaosMonkeyAssaults) -
chaosMonkeyRestEndpoint
@Bean @ConditionalOnMissingBean @ConditionalOnAvailableEndpoint public ChaosMonkeyRestEndpoint chaosMonkeyRestEndpoint(ChaosMonkeySettings settings, ChaosMonkeyRuntimeScope runtimeScope, ChaosMonkeyScheduler scheduler) -
chaosMonkeyJmxEndpoint
@Bean @ConditionalOnMissingBean @ConditionalOnAvailableEndpoint public ChaosMonkeyJmxEndpoint chaosMonkeyJmxEndpoint(ChaosMonkeySettings settings)
-