Ejemplo n.º 1
0
        public CassandraRepository(IConfiguration configuration)
        {
            var CassandraConfiguration = configuration.GetSection("CassandraConfiguration").Get <CassandraConfiguration>();

            this.CassandraConfiguration = CassandraConfiguration;
            Initialize(CassandraConfiguration);
        }
 public HttpTrigger(AlertingConfiguration alertingConfiguration,
                    BackupArchivingConfiguration backupArchivingConfiguration,
                    BackupConfiguration backupConfiguration,
                    CassandraConfiguration cassandraConfiguration)
 {
     _alertingConfiguration        = alertingConfiguration;
     _backupArchivingConfiguration = backupArchivingConfiguration;
     _backupConfiguration          = backupConfiguration;
     _cassandraConfiguration       = cassandraConfiguration;
 }
Ejemplo n.º 3
0
        protected EventRepository(CassandraSessionCacheManager sessionCacheManager, CassandraConfiguration cassandraConfig)
        {
            if (cassandraConfig == null)
            {
                throw new ArgumentNullException(nameof(cassandraConfig));
            }

            this.SessionCacheManager = sessionCacheManager;
            this.KeySpace            = cassandraConfig.KeySpace;
        }
Ejemplo n.º 4
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            var cassandraConfiguration = new CassandraConfiguration();

            Configuration.GetSection("Cassandra").Bind(cassandraConfiguration);
            services.AddSingleton(cassandraConfiguration);

            services.AddSingleton <IDataAggregator, DataAggregator>();
            services.AddSingleton <IPiSimDataProvider, CassandraPiSimDataProvider>();

            services.AddMvc();
        }
Ejemplo n.º 5
0
        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            // Add framework services.
            services.AddMvc(options => { options.Filters.AddService(typeof(AgentGlobalExceptionFilter)); });
            services.AddSingleton <IIngestionClient, IngestionClient>();
            services.AddSingleton <IAgentProcessor, AgentProcessor>();
            services.AddSingleton <TripCounterFactory>();
            services.AddSingleton <AgentGlobalExceptionFilter>();

            services.AddSingleton <IWebsocketsManager, WebsocketsManager>();
            services.AddSingleton <IWebsocketsSender, WebsocketsManager>();
            services.AddSingleton <IWebsocketsReceiver, RealtimeMessageHandler>();
            services.AddSingleton <IDataAggregator, DataAggregator>();

            services.AddSingleton <IRangeCreator <RawDataRange>, RawDataRangeCreator>();
            services.AddSingleton <IRangeAccessor <RawDataRange>, RawDataRangeAccessor>();
            services.AddSingleton <IRangeFilteringPolicy <RawDataRange>, RawDataRangeFilteringPolicy>();
            services.AddSingleton <IRangeFilterer <RawDataRange>, RangeFilterer <RawDataRange> >();
            services.AddSingleton <IRangeJoiner <RawDataRange>, RangeJoiner <RawDataRange> >();
            services.AddSingleton <IRangeMerger <RawDataRange>, RangeMerger <RawDataRange> >();

            var ingestionConfiguration = new Core.AgentIngestionConfiguration();

            Configuration.GetSection("Ingestion").Bind(ingestionConfiguration);
            services.AddSingleton(ingestionConfiguration);

            if (ingestionConfiguration.SourcePlugin == SourcePlugin.FakeSource)
            {
                services.AddSingleton <ISourceDataProvider, FakeSourceDataProvider>();

                var fakeSourceConfiguration = new FakeSourceConfiguration();
                Configuration.GetSection("FakeSource").Bind(fakeSourceConfiguration);
                services.AddSingleton(fakeSourceConfiguration);
            }
            else if (ingestionConfiguration.SourcePlugin == SourcePlugin.PISim)
            {
                services.AddSingleton <ISourceDataProvider, CassandraPiSimDataProvider>();

                var cassandraConfiguration = new CassandraConfiguration();
                Configuration.GetSection("Cassandra").Bind(cassandraConfiguration);
                services.AddSingleton(cassandraConfiguration);
            }

            services.AddCors();

            /*services.AddApplicationInsightsTelemetry(options =>
             * {
             *  options.EnableAdaptiveSampling = true;
             *  options.InstrumentationKey = "b772acb1-c0a5-4806-9b23-812113cf3c46";
             *  options.EnableDebugLogger = false;
             * });*/
        }
Ejemplo n.º 6
0
        private void Initialize(CassandraConfiguration configuration)
        {
            try
            {
                Cluster cluster = Cluster.Builder().AddContactPoint(configuration.Host).Build();
                Session = cluster.Connect(configuration.KeystoreName);

                MapCollections();
            }
            catch (Exception ex)
            {
                throw;
            }
        }
Ejemplo n.º 7
0
        public CassandraPersistentDataProvider(CassandraConfiguration configuration, SeriesConfiguration series, IRangeFilterer <TimeRange> filterer, IModelProvider model)
        {
            _filterer          = filterer;
            _model             = model;
            _lowestAggregation = series.AggregationsSeconds.Min();
            var cluster = Cluster.Builder()
                          .AddContactPoints(configuration.Address)
                          .WithCredentials(configuration.Username, configuration.Password)
                          .WithDefaultKeyspace(configuration.Keyspace)
                          .WithQueryTimeout(configuration.QueryTimeout)
                          .Build();

            _session = cluster.Connect();
        }
Ejemplo n.º 8
0
        public CassandraPiSimDataProvider(CassandraConfiguration configuration, IDataAggregator aggregator, ILogger <CassandraPiSimDataProvider> logger, IRangeMerger <RawDataRange> rawMerger)
        {
            _configuration = configuration;
            _aggregator    = aggregator;
            _logger        = logger;
            _rawMerger     = rawMerger;
            var cluster = Cluster.Builder()
                          .AddContactPoints(configuration.Address)
                          .WithDefaultKeyspace(configuration.Keyspace)
                          .WithQueryTimeout(configuration.QueryTimeout)
                          .Build();

            _session = cluster.Connect();
        }
Ejemplo n.º 9
0
 public Runner(ILogger logger, ICounter counter, ICassandraService cassandraService,
               CassandraConfiguration cassandraConfiguration, BackupConfiguration backupConfiguration,
               BackupArchivingConfiguration backupArchivingConfiguration, IAlerter alerter,
               AlertingConfiguration alertingConfiguration, IPatternMatching patternMatching)
 {
     _logger                       = logger;
     _alerter                      = alerter;
     _counter                      = counter;
     _cassandraService             = cassandraService;
     _cassandraConfiguration       = cassandraConfiguration;
     _backupArchivingConfiguration = backupArchivingConfiguration;
     _backupConfiguration          = backupConfiguration;
     _alertingConfiguration        = alertingConfiguration;
     _patternMatching              = patternMatching;
 }
Ejemplo n.º 10
0
 public CassandraSimpleTests(CassandraFixture fixture)
 {
     _fixture = fixture;
     _config  = new CassandraConfiguration();
 }
 public CassandraRepository(CassandraSessionCacheManager sessionCacheManager, CassandraConfiguration cassandrConfig)
 {
     this.sessionCacheManager = sessionCacheManager;
     this.keySpace            = cassandrConfig.KeySpace;
 }
 public ValuesController(CassandraConfiguration configuration)
 {
     config = configuration;
 }
Ejemplo n.º 13
0
 public EventCommandRepository(CassandraSessionCacheManager sessionCacheManager, CassandraConfiguration cassandraConfig)
     : base(sessionCacheManager, cassandraConfig)
 {
 }
Ejemplo n.º 14
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="sessionCacheManager"></param>
 /// <param name="cassandrConfig"></param>
 /// <param name="logger"></param>
 public EventRepository(CassandraSessionCacheManager sessionCacheManager, CassandraConfiguration cassandrConfig, ILogger <EventRepository> logger)
 {
     this.sessionCacheManager = sessionCacheManager;
     this.keySpace            = cassandrConfig.KeySpace;
     this.logger = logger;
 }
Ejemplo n.º 15
0
        public void ConfigureServices(IServiceCollection services)
        {
            /*var database = "appmetricsdemo";
             * var uri = new Uri("http://54.252.216.203:8086");
             *
             * services.AddMetrics(options =>
             *  {
             *      options.WithGlobalTags((globalTags, info) =>
             *      {
             *          globalTags.Add("app", info.EntryAssemblyName);
             *          globalTags.Add("env", "stage");
             *      });
             *  })
             *  .AddHealthChecks()
             *  .AddJsonSerialization()
             *  .AddReporting(
             *      factory =>
             *      {
             *          factory.AddInfluxDb(
             *              new InfluxDBReporterSettings
             *              {
             *                  InfluxDbSettings = new InfluxDBSettings(database, uri),
             *                  ReportInterval = TimeSpan.FromSeconds(5)
             *              });
             *      })
             *  .AddMetricsMiddleware(options => options.IgnoredHttpStatusCodes = new[] { 404 });*/

            //services.AddMvc(options => options.AddMetricsResourceFilter());

            /*services.AddSingleton<StatsN.IStatsd>(provider => new StatsN.Statsd(new StatsN.StatsdOptions()
             * {
             *  HostOrIp = "127.0.0.1",
             *  Port = 8125
             * }));*/

            services.AddMvc();

            var seriesConfiguration = new Common.Model.SeriesConfiguration();

            Configuration.GetSection("Series").Bind(seriesConfiguration);
            services.AddSingleton(seriesConfiguration);

            var modelConfigurationLoader = new ModelConfigurationLoader();
            var modelConfiguration       = modelConfigurationLoader.Load("model.csv");

            services.AddSingleton(modelConfiguration);

            var ingestionConfiguration = new IngestionConfiguration();

            Configuration.GetSection("Ingestion").Bind(ingestionConfiguration);
            services.AddSingleton(ingestionConfiguration);

            var realtimeConfiguration = new RealtimeConfiguration();

            Configuration.GetSection("Realtime").Bind(realtimeConfiguration);
            services.AddSingleton(realtimeConfiguration);

            if (ingestionConfiguration.PersistencePlugin == PersistencePlugin.Cassandra)
            {
                services.AddSingleton <IPersistentDataProvider, CassandraPersistentDataProvider>();

                var cassandraConfiguration = new CassandraConfiguration();
                Configuration.GetSection("Cassandra").Bind(cassandraConfiguration);
                services.AddSingleton(cassandraConfiguration);
            }
            else if (ingestionConfiguration.PersistencePlugin == PersistencePlugin.DynamoDb)
            {
                /*services.AddSingleton<IPersistentDataProvider, DynamoDbPersistentDataProvider>();
                 *
                 * var dynamoDbConfiguration = new DynamoDbConfiguration();
                 * Configuration.GetSection("DynamoDb").Bind(dynamoDbConfiguration);
                 * services.AddSingleton(dynamoDbConfiguration);*/
            }
            else if (ingestionConfiguration.PersistencePlugin == PersistencePlugin.Noop)
            {
                services.AddSingleton <IPersistentDataProvider, NoopPersistenceProvider>();
            }

            services.AddSingleton <IIngestionProcessor, IngestionProcessor>();
            services.AddSingleton <ICachedDataProvider, RedisCachedDataProvider>();
            services.AddSingleton <IDataAggregator, DataAggregator>();
            services.AddSingleton <IModelProvider, ModelProvider>();
            services.AddSingleton <RealtimeIngestionReceiver>();
            services.AddSingleton <IDataMessenger>(options => options.GetService <RealtimeIngestionReceiver>());
            services.AddSingleton <IRealtimeSubscriptions>(options => options.GetService <RealtimeIngestionReceiver>());

            services.AddSingleton <IRangeCreator <AggregatedDataRange>, AggregatedRangeCreator>();
            services.AddSingleton <IRangeAccessor <AggregatedDataRange>, AggregatedRangeAccessor>();
            services.AddSingleton <IRangeFilteringPolicy <AggregatedDataRange>, AggregateRangeFilteringPolicy>();
            services.AddSingleton <IRangeFilterer <AggregatedDataRange>, RangeFilterer <AggregatedDataRange> >();
            services.AddSingleton <IRangeJoiner <AggregatedDataRange>, RangeJoiner <AggregatedDataRange> >();
            services.AddSingleton <IRangeMerger <AggregatedDataRange>, RangeMerger <AggregatedDataRange> >();

            services.AddSingleton <IRangeCreator <TimeRange>, TimeRangeCreator>();
            services.AddSingleton <IRangeAccessor <TimeRange>, TimeRangeAccessor>();
            services.AddSingleton <IRangeFilteringPolicy <TimeRange>, TimeRangeFilteringPolicy>();
            services.AddSingleton <IRangeFilterer <TimeRange>, RangeFilterer <TimeRange> >();
            services.AddSingleton <IRangeJoiner <TimeRange>, RangeJoiner <TimeRange> >();
            services.AddSingleton <IRangeMerger <TimeRange>, RangeMerger <TimeRange> >();

            services.AddSingleton <IWebsocketsManager, WebsocketsManager>();
            services.AddSingleton <IWebsocketsSender, WebsocketsManager>();
            services.AddSingleton <IWebsocketsReceiver>(options => options.GetService <RealtimeIngestionReceiver>());

            services.AddSingleton <TripCounterFactory>();

            services.AddCors();

            /*services.AddApplicationInsightsTelemetry(options =>
             * {
             *  options.EnableAdaptiveSampling = true;
             *  options.InstrumentationKey = "0def8f5e-9482-48ec-880d-4d2a81834a49";
             *  options.EnableDebugLogger = false;
             * });*/
        }
 public CassandraRepoPatterns(CassandraConfiguration config)
 {
     _config = config;
 }
 /// <summary>
 ///
 /// </summary>
 /// <param name="sessionCacheManager"></param>
 /// <param name="cassandrConfig"></param>
 /// <param name="logger"></param>
 public UserProfileRepository(CassandraSessionCacheManager sessionCacheManager, CassandraConfiguration cassandrConfig, ILogger <UserProfileRepository> logger)
 {
     this.sessionCacheManager = sessionCacheManager;
     this.keySpace            = cassandrConfig.KeySpace;
     this.logger = logger;
     //this.keySpace =
 }
 public CassandraDA(CassandraConfiguration config)
 {
     _config  = config;
     keyspace = config.keySpace;
 }