Sha256: 869a8bdd0bfbd6a7e15efd0f31a479b2a806f3720648f6f992a5785393ac7408

Contents?: true

Size: 1.37 KB

Versions: 2

Compression:

Stored size: 1.37 KB

Contents

# encoding: utf-8
# This file is distributed under New Relic's license terms.
# See https://github.com/newrelic/rpm/blob/master/LICENSE for complete details.

module NewRelic
  module Agent
    module Configuration
      module EventHarvestConfig

        extend self

        EVENT_HARVEST_CONFIG_KEY_MAPPING = {
          :analytic_event_data => :'analytics_events.max_samples_stored',
          :custom_event_data => :'custom_insights_events.max_samples_stored',
          :error_event_data => :'error_collector.max_event_samples_stored'
        }

        def from_config(config)
          {:harvest_limits => EVENT_HARVEST_CONFIG_KEY_MAPPING.inject({}) do
            |connect_payload, (connect_payload_key, config_key)|
              connect_payload[connect_payload_key] = config[config_key]
              connect_payload
            end
          }
        end

        def to_config_hash(connect_reply)
          config_hash = EVENT_HARVEST_CONFIG_KEY_MAPPING.inject({}) do 
            |event_harvest_config, (connect_payload_key, config_key)|
              event_harvest_config[config_key] = connect_reply['event_harvest_config']['harvest_limits'][connect_payload_key.to_s]
              event_harvest_config
            end
          config_hash[:event_report_period] = connect_reply['event_harvest_config']['report_period_ms'] / 1000
          config_hash
        end
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
newrelic_rpm-6.6.0.358 lib/new_relic/agent/configuration/event_harvest_config.rb
newrelic_rpm-6.5.0.357 lib/new_relic/agent/configuration/event_harvest_config.rb