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(); } }
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); }
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; }
/// <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; }
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. }
protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource) { _cache.SetCapacity(_configuration.DatabaseStatementCacheCapcity); }
protected override void OnConfigurationUpdated(ConfigurationUpdateSource configurationUpdateSource) { Stop(); Start(); }