コード例 #1
0
        public ScannerFactory(HareDuConfig config, IKnowledgeBaseProvider kb)
        {
            _config       = config.IsNotNull() ? config : throw new HareDuDiagnosticsException($"{nameof(config)} argument missing.");
            _kb           = kb.IsNotNull() ? kb : throw new HareDuDiagnosticsException($"{nameof(kb)} argument missing.");
            _scannerCache = new ConcurrentDictionary <string, object>();
            _probeCache   = new ConcurrentDictionary <string, DiagnosticProbe>();
            _observers    = new List <IDisposable>();

            if (!TryRegisterAllProbes())
            {
                throw new HareDuDiagnosticsException("Could not register diagnostic probes.");
            }

            if (!TryRegisterAllScanners())
            {
                throw new HareDuDiagnosticsException("Could not register diagnostic scanners.");
            }
        }
コード例 #2
0
 public ConsumerUtilizationProbe(DiagnosticsConfig config, IKnowledgeBaseProvider kb)
     : base(kb)
 {
     _config = config;
 }
コード例 #3
0
ファイル: DiskAlarmProbe.cs プロジェクト: ahives/HareDu1
 public DiskAlarmProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #4
0
ファイル: FakeProbe.cs プロジェクト: ahives/HareDu1
 public FakeProbe(IKnowledgeBaseProvider kb) : base(kb)
 {
 }
コード例 #5
0
 public ChannelLimitReachedProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #6
0
 public QueueGrowthProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #7
0
 public FileDescriptorThrottlingProbe(DiagnosticsConfig config, IKnowledgeBaseProvider kb)
     : base(kb)
 {
     _config = config;
 }
コード例 #8
0
 public AvailableCpuCoresProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #9
0
ファイル: MessagePagingProbe.cs プロジェクト: ahives/HareDu1
 public MessagePagingProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #10
0
 public UnroutableMessageProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #11
0
 public RuntimeProcessLimitProbe(DiagnosticsConfig config, IKnowledgeBaseProvider kb)
     : base(kb)
 {
     _config = config;
 }
コード例 #12
0
 public BlockedConnectionProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #13
0
ファイル: MemoryAlarmProbe.cs プロジェクト: ahives/HareDu1
 public MemoryAlarmProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #14
0
 public ChannelThrottlingProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #15
0
 public QueueLowFlowProbe(DiagnosticsConfig config, IKnowledgeBaseProvider kb)
     : base(kb)
 {
     _config = config;
 }
コード例 #16
0
ファイル: BaseDiagnosticProbe.cs プロジェクト: ahives/HareDu3
 protected BaseDiagnosticProbe(IKnowledgeBaseProvider kb)
 {
     _kb = kb;
     _resultObservers = new List <IObserver <ProbeContext> >();
 }
コード例 #17
0
 public UnlimitedPrefetchCountProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #18
0
 public NetworkPartitionProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #19
0
 public HighConnectionCreationRateProbe(DiagnosticsConfig config, IKnowledgeBaseProvider kb)
     : base(kb)
 {
     _config = config;
 }
コード例 #20
0
ファイル: QueueNoFlowProbe.cs プロジェクト: ahives/HareDu1
 public QueueNoFlowProbe(IKnowledgeBaseProvider kb)
     : base(kb)
 {
 }
コード例 #21
0
 public RedeliveredMessagesProbe(DiagnosticsConfig config, IKnowledgeBaseProvider kb)
     : base(kb)
 {
     _config = config;
 }