Beispiel #1
0
        public ClientStartup()
        {
            var metricMemoryRepository = new InMemoryRepository <MetricResult>();
            var alertHub        = new AlertHub();
            var healingExecutor = new HealingExecutor();

            _testExecutor = new TimedTestExecutor(new List <ITester>
            {
                new TcpTester(),
                new WebTester(),
                new ServiceTester(),
                new SslTester(),
                new PowershellTest()
            }, metricMemoryRepository,
                                                  alertHub,
                                                  healingExecutor);

            _metricCollector = new TimedMetricExecutor(new List <ICollector>
            {
                new ServerMetricCollector(),
                new RedisMetricCollector(),
                new RabbitMqCollector(),
                new ElasticSearchCollector(),
                new HaProxyCollector(),
                new SqlQueryCollector(metricMemoryRepository)
            }, metricMemoryRepository);

            var restMetricRepository = new RestRepository <MetricResult>();

            _metricTimedReporter = new TimedReporter <MetricResult>(metricMemoryRepository, restMetricRepository);

            _eventLogListener = new EventLogListener(metricMemoryRepository);
            _eventLogListener.Init();
        }
Beispiel #2
0
        public ServerStartup()
        {
            var config = new HttpSelfHostConfiguration($"http://{ConfigurationService.Instance.Get<string>(Constants.ServerHost)}:{ConfigurationService.Instance.Get<string>(Constants.ServerPort)}");

            config.Routes.MapHttpRoute(
                "API Default", "api/{controller}/{id}",
                new { id = RouteParameter.Optional });
            //config.MaxReceivedMessageSize = config.MaxReceivedMessageSize * 2;

            _server = new HttpSelfHostServer(config);

            _metricReporter = new TimedReporter <MetricResult>(new InMemoryRepository <MetricResult>(), new ElasticRestRepository <MetricResult>(new InMemoryRepository <MetricResult>()));

            _retentionPolicyMetrics = new TimedElasticSearchRetentionPolicy <MetricResult>();
        }