Пример #1
0
        protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
        {
            // It is *CRITICAL* that this method never do anything more complicated than clearing data and starting and ending subscriptions.
            // If this method ends up trying to send data synchronously (even indirectly via the EventBus or RequestBus) then the user's application will deadlock (!!!).

            GetAndResetCollection(_configuration.CustomEventsMaximumSamplesStored);
        }
        protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
        {
            // It is *CRITICAL* that this method never do anything more complicated than clearing data and starting and ending subscriptions.
            // If this method ends up trying to send data synchronously (even indirectly via the EventBus or RequestBus) then the user's application will deadlock (!!!).

            ReplaceStatsEngineQueue();
        }
        private void UpdateAndPublishConfiguration(ConfigurationUpdateSource configurationUpdateSource)
        {
            Configuration = new InternalConfiguration(_environment, _localConfiguration, _serverConfiguration, _runTimeConfiguration, _securityPoliciesConfiguration, _processStatic, _httpRuntimeStatic, _configurationManagerStatic, _dnsStatic);

            var configurationUpdatedEvent = new ConfigurationUpdatedEvent(Configuration, configurationUpdateSource);

            EventBus <ConfigurationUpdatedEvent> .Publish(configurationUpdatedEvent);
        }
        protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
        {
            // It is *CRITICAL* that this method never do anything more complicated than clearing data and starting and ending subscriptions.
            // If this method ends up trying to send data synchronously (even indirectly via the EventBus or RequestBus) then the user's application will deadlock (!!!).

            _sqlObfuscator = SqlObfuscator.GetSqlObfuscator(_configuration.TransactionTracerEnabled, _configuration.TransactionTracerRecordSql);
            _cache.SetCapacity(_configuration.DatabaseStatementCacheCapcity);
        }
 protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
 {
     if (configurationUpdateSource == ConfigurationUpdateSource.Local && _configuration.SpanEventsMaxSamplesStored != _spanEvents.Size)
     {
         //we might have received server configuration that says we should not have collected the
         //events that we have, drop them on the floor by ignoring the returned collection.
         GetAndResetCollection();
     }
 }
Пример #6
0
        protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
        {
            // It is *CRITICAL* that this method never do anything more complicated than clearing data and starting and ending subscriptions.
            // If this method ends up trying to send data synchronously (even indirectly via the EventBus or RequestBus) then the user's application will deadlock (!!!).

            foreach (var transactionCollector in _transactionCollectors)
            {
                transactionCollector?.GetCollectedSamples();
            }
        }
        protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
        {
            // If we receive a non-server config update while connected then we need to reconnect.
            // Receiving a server config update implies that we just connected or disconnected so there's no need to do anything.
            if (configurationUpdateSource == ConfigurationUpdateSource.Server)
            {
                return;
            }
            if (_configuration.AgentRunId == null)
            {
                return;
            }

            Log.Info("Reconnecting due to configuration change");

            _scheduler.ExecuteOnce(Reconnect, TimeSpan.Zero);
        }
Пример #8
0
        protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
        {
            if (configurationUpdateSource != ConfigurationUpdateSource.Server ||
                !_configuration.DistributedTracingEnabled ||
                !_configuration.SamplingTarget.HasValue)
            {
                return;
            }

            var samplingTarget = _configuration.SamplingTarget.Value;

            if (samplingTarget < MinTargetSamplesPerInterval)
            {
                Log.Error(
                    $"invalid value specified in new server configuration; sampling_target must be at least {MinTargetSamplesPerInterval} but was {samplingTarget}. (defaulting to {DefaultTargetSamplesPerInterval})");
                samplingTarget = DefaultTargetSamplesPerInterval;
            }

            var samplingInterval = TimeSpan.FromSeconds(_configuration.SamplingTargetPeriodInSeconds ?? DefaultTargetSamplingIntervalInSeconds);

            //This .ctor will force the start of the sampling interval timer if it wasn't started previously
            _state = new AdaptiveSamplerState(samplingTarget, samplingInterval, _state);
        }
 protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
 {
     _sampleFrequency = _configuration.DiagnosticsCaptureAgentTimingFrequency;
     _enabled         = _configuration.DiagnosticsCaptureAgentTiming && _sampleFrequency > 0;
 }
Пример #10
0
 /// <summary>
 /// Override if you want to take action on configuration update.  e.g., alter subscriptions based on new configuration information.
 /// </summary>
 protected abstract void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource);
 public ConfigurationUpdatedEvent(IConfiguration configuration, ConfigurationUpdateSource configurationUpdateSource)
 {
     Configuration             = configuration;
     ConfigurationUpdateSource = configurationUpdateSource;
 }
Пример #12
0
 protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
 {
     ConfigUpdateCount++;
 }
 protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
 {
     // This implementation only exists to satisfy the derivation from ConfigurationBasedService, which exists for access to
     // to the customInstrumentationEditor configuration option, which is influenced by the highSecurity configuration.
 }
Пример #14
0
 protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
 {
     _cache.SetCapacity(_configuration.DatabaseStatementCacheCapcity);
 }
 protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource)
 {
     Stop();
     Start();
 }