internal void MarkCommandDone(ExecutionResult executionResult, IHystrixCommandKey commandKey, IHystrixThreadPoolKey threadPoolKey, bool executionStarted)
 {
     HystrixThreadEventStream.GetInstance().ExecutionDone(executionResult, commandKey, threadPoolKey);
     if (executionStarted)
     {
         _concurrentExecutionCount.DecrementAndGet();
     }
 }
        public HystrixThreadEventStreamTest(ITestOutputHelper output) : base()
        {
            this.output   = output;
            commandKey    = HystrixCommandKeyDefault.AsKey("CMD-ThreadStream");
            threadPoolKey = HystrixThreadPoolKeyDefault.AsKey("TP-ThreadStream");

            writeToStream        = HystrixThreadEventStream.GetInstance();
            readCommandStream    = HystrixCommandCompletionStream.GetInstance(commandKey);
            readThreadPoolStream = HystrixThreadPoolCompletionStream.GetInstance(threadPoolKey);
        }
        internal static void Reset()
        {
            foreach (HystrixCommandMetrics metricsInstance in GetInstances())
            {
                metricsInstance.UnsubscribeAll();
            }

            RollingCommandEventCounterStream.Reset();
            CumulativeCommandEventCounterStream.Reset();
            RollingCommandLatencyDistributionStream.Reset();
            RollingCommandUserLatencyDistributionStream.Reset();
            RollingCommandMaxConcurrencyStream.Reset();
            HystrixThreadEventStream.Reset();
            HealthCountsStream.Reset();

            Metrics.Clear();
        }
예제 #4
0
 public void MarkBatch(int batchSize)
 {
     HystrixThreadEventStream.GetInstance().CollapserBatchExecuted(CollapserKey, batchSize);
 }
예제 #5
0
 public void MarkResponseFromCache()
 {
     HystrixThreadEventStream.GetInstance().CollapserResponseFromCache(CollapserKey);
 }
        internal void MarkCommandStart(IHystrixCommandKey commandKey, IHystrixThreadPoolKey threadPoolKey, ExecutionIsolationStrategy isolationStrategy)
        {
            int currentCount = _concurrentExecutionCount.IncrementAndGet();

            HystrixThreadEventStream.GetInstance().CommandExecutionStarted(commandKey, threadPoolKey, isolationStrategy, currentCount);
        }