Beispiel #1
0
        public virtual void SetReferences(IReferences references)
        {
            _metricsService = references.GetOneRequired <ICosmosDbMetricsService>(new Descriptor("pip-services3", "metrics-service", "*", "*", "*"));
            _lock           = references.GetOneRequired <ILock>(new Descriptor("pip-services3", "lock", "*", "*", "*"));

            _logger.SetReferences(references);
        }
        public virtual void SetReferences(IReferences references)
        {
            try
            {
                _logger.SetReferences(references);

                var mongoDbConnectionUrl = new MongoUrlBuilder(ConnectionUri);
                AccountName  = mongoDbConnectionUrl.Username;
                AccessKey    = mongoDbConnectionUrl.Password;
                DatabaseName = mongoDbConnectionUrl.DatabaseName;

                _metricsService = references.GetOneRequired <ICosmosDbMetricsService>(new Descriptor("pip-services", "metrics-service", "*", "*", "*"));
                _lock           = references.GetOneRequired <ILock>(new Descriptor("pip-services", "lock", "*", "*", "*"));

                _timer = new FixedRateTimer(PerformMonitorAsync, TimerInterval, DelayInterval);
            }
            catch (Exception exception)
            {
                _logger.Error("AbstractCosmosDbPersistenceThroughputMonitor", exception,
                              $"Failed to configure the CosmosDb persistence throughput monitor with parameters '{_configParams}'.");
            }
        }