private QueuePool(Func<AMQPQueue> amqpQueueGenerator) { _amqpQueueGenerator = amqpQueueGenerator; _amqpQueues = new ConcurrentBag<AMQPQueue>(); var manager = new RabbitMQQueueMetricsManager(false, "localhost", 15672, "paul", "password"); var queueMetrics = manager.GetAMQPQueueMetrics(); foreach (var queueMetric in queueMetrics.Values) { Guid queueName; var isGuid = Guid.TryParse(queueMetric.QueueName, out queueName); if (isGuid) { _amqpQueues.Add(new RabbitMQQueue {IsNew = false, Name = queueName.ToString()}); } } }
public void Init() { var amqpQueueMetricsManager = new RabbitMQQueueMetricsManager(false, "localhost", 15672, "paul", "password"); AMQPQueueMetricsAnalyser amqpQueueMetricsAnalyser = new RabbitMQQueueMetricsAnalyser( new ConsumerUtilisationTooLowAMQPQueueMetricAnalyser( new ConsumptionRateIncreasedAMQPQueueMetricAnalyser( new DispatchRateDecreasedAMQPQueueMetricAnalyser( new QueueLengthIncreasedAMQPQueueMetricAnalyser( new ConsumptionRateDecreasedAMQPQueueMetricAnalyser( new StableAMQPQueueMetricAnalyser()))))), 20); AMQPConsumerNotifier amqpConsumerNotifier = new RabbitMQConsumerNotifier(RabbitMQAdapter.Instance, "monitor"); RabbitMQAdapter.Instance.Init("localhost", 5672, "paul", "password", 50); _queueWatch = new QueueWatch(amqpQueueMetricsManager, amqpQueueMetricsAnalyser, amqpConsumerNotifier, 5000); _queueWatch.AMQPQueueMetricsAnalysed += QueueWatchOnAMQPQueueMetricsAnalysed; _queueWatch.StartAsync(); }
private QueuePool(Func <AMQPQueue> amqpQueueGenerator) { _amqpQueueGenerator = amqpQueueGenerator; _amqpQueues = new ConcurrentBag <AMQPQueue>(); var manager = new RabbitMQQueueMetricsManager(false, "localhost", 15672, "paul", "password"); var queueMetrics = manager.GetAMQPQueueMetrics(); foreach (var queueMetric in queueMetrics.Values) { Guid queueName; var isGuid = Guid.TryParse(queueMetric.QueueName, out queueName); if (isGuid) { _amqpQueues.Add(new RabbitMQQueue { IsNew = false, Name = queueName.ToString() }); } } }