public void Before() { context = HystrixRequestContext.InitializeContext(); HystrixCommandMetrics.Reset(); HystrixThreadPoolMetrics.Reset(); HystrixCollapserMetrics.Reset(); // clear collapsers RequestCollapserFactory.Reset(); // clear circuit breakers HystrixCircuitBreakerFactory.Reset(); HystrixPlugins.Reset(); HystrixOptionsFactory.Reset(); // clear up all streams CumulativeCollapserEventCounterStream.Reset(); CumulativeCommandEventCounterStream.Reset(); CumulativeThreadPoolEventCounterStream.Reset(); RollingCollapserBatchSizeDistributionStream.Reset(); RollingCollapserEventCounterStream.Reset(); RollingCommandEventCounterStream.Reset(); RollingCommandLatencyDistributionStream.Reset(); RollingCommandMaxConcurrencyStream.Reset(); RollingCommandUserLatencyDistributionStream.Reset(); RollingThreadPoolEventCounterStream.Reset(); RollingThreadPoolMaxConcurrencyStream.Reset(); }
public HystrixTestBase() { HystrixCommandMetrics.Reset(); HystrixThreadPoolMetrics.Reset(); HystrixCollapserMetrics.Reset(); // clear collapsers RequestCollapserFactory.Reset(); // clear circuit breakers HystrixCircuitBreakerFactory.Reset(); HystrixPlugins.Reset(); HystrixOptionsFactory.Reset(); }
public HystrixThreadPoolDefault(IHystrixThreadPoolKey threadPoolKey, IHystrixThreadPoolOptions propertiesDefaults) { _properties = HystrixOptionsFactory.GetThreadPoolOptions(threadPoolKey, propertiesDefaults); _properties = propertiesDefaults ?? new HystrixThreadPoolOptions(threadPoolKey); var concurrencyStrategy = HystrixPlugins.ConcurrencyStrategy; _queueSize = _properties.MaxQueueSize; _metrics = HystrixThreadPoolMetrics.GetInstance(threadPoolKey, concurrencyStrategy.GetTaskScheduler(_properties), _properties); _taskScheduler = _metrics.TaskScheduler; /* strategy: HystrixMetricsPublisherThreadPool */ HystrixMetricsPublisherFactory.CreateOrRetrievePublisherForThreadPool(threadPoolKey, _metrics, _properties); }
public HystrixThreadPoolDefault(IHystrixThreadPoolKey threadPoolKey, IHystrixThreadPoolOptions propertiesDefaults) { this.properties = HystrixOptionsFactory.GetThreadPoolOptions(threadPoolKey, propertiesDefaults); this.properties = propertiesDefaults ?? new HystrixThreadPoolOptions(threadPoolKey); HystrixConcurrencyStrategy concurrencyStrategy = HystrixPlugins.ConcurrencyStrategy; this.queueSize = properties.MaxQueueSize; this.metrics = HystrixThreadPoolMetrics.GetInstance(threadPoolKey, concurrencyStrategy.GetTaskScheduler(properties), properties); this.taskScheduler = this.metrics.TaskScheduler; /* strategy: HystrixMetricsPublisherThreadPool */ HystrixMetricsPublisherFactory.CreateOrRetrievePublisherForThreadPool(threadPoolKey, this.metrics, this.properties); }
public HystrixTestBase() { this.context = HystrixRequestContext.InitializeContext(); HystrixCommandMetrics.Reset(); HystrixThreadPoolMetrics.Reset(); HystrixCollapserMetrics.Reset(); // clear collapsers RequestCollapserFactory.Reset(); // clear circuit breakers HystrixCircuitBreakerFactory.Reset(); HystrixPlugins.Reset(); HystrixOptionsFactory.Reset(); }
protected HystrixCollapser(IHystrixCollapserKey collapserKey, RequestCollapserScope scope, ICollapserTimer timer, IHystrixCollapserOptions optionsDefault, HystrixCollapserMetrics metrics) { if (collapserKey == null || collapserKey.Name.Trim().Equals("")) { string defaultKeyName = GetDefaultNameFromClass(GetType()); collapserKey = HystrixCollapserKeyDefault.AsKey(defaultKeyName); } IHystrixCollapserOptions options = HystrixOptionsFactory.GetCollapserOptions(collapserKey, optionsDefault); this.collapserFactory = new RequestCollapserFactory(collapserKey, scope, timer, options); this.requestCache = HystrixRequestCache.GetInstance(collapserKey); if (metrics == null) { this.metrics = HystrixCollapserMetrics.GetInstance(collapserKey, options); } else { this.metrics = metrics; } HystrixMetricsPublisherFactory.CreateOrRetrievePublisherForCollapser(collapserKey, this.metrics, options); }
protected HystrixCollapser(IHystrixCollapserKey collapserKey, RequestCollapserScope scope, ICollapserTimer timer, IHystrixCollapserOptions optionsDefault, HystrixCollapserMetrics metrics) { if (collapserKey == null || string.IsNullOrWhiteSpace(collapserKey.Name)) { var defaultKeyName = GetDefaultNameFromClass(GetType()); collapserKey = HystrixCollapserKeyDefault.AsKey(defaultKeyName); } var options = HystrixOptionsFactory.GetCollapserOptions(collapserKey, optionsDefault); _collapserFactory = new RequestCollapserFactory(collapserKey, scope, timer, options); _requestCache = HystrixRequestCache.GetInstance(collapserKey); if (metrics == null) { _metrics = HystrixCollapserMetrics.GetInstance(collapserKey, options); } else { _metrics = metrics; } HystrixMetricsPublisherFactory.CreateOrRetrievePublisherForCollapser(collapserKey, _metrics, options); }