class GDS::Metrics::Config

Attributes

application_id[RW]
auth_enabled[RW]
auth_enabled?[RW]
mmap_directory[RW]
prometheus_metrics_path[RW]

Public Class Methods

instance() click to toggle source
# File lib/gds_metrics/config.rb, line 15
def self.instance
  @singleton ||= Config.new
end

Public Instance Methods

populate_from_env() click to toggle source
# File lib/gds_metrics/config.rb, line 19
def populate_from_env
  self.application_id = fetch_application_id
  self.prometheus_metrics_path = fetch_prometheus_metrics_path
  self.mmap_directory = fetch_mmap_directory
  self.auth_enabled = !application_id.nil?
end

Private Instance Methods

fetch_application_id() click to toggle source
# File lib/gds_metrics/config.rb, line 28
def fetch_application_id
  vcap_application = JSON.parse(ENV.fetch("VCAP_APPLICATION", "{}"))
  vcap_application["application_id"]
end
fetch_mmap_directory() click to toggle source
# File lib/gds_metrics/config.rb, line 37
def fetch_mmap_directory
  ENV.fetch("MMAP_DIRECTORY", "/tmp")
end
fetch_prometheus_metrics_path() click to toggle source
# File lib/gds_metrics/config.rb, line 33
def fetch_prometheus_metrics_path
  ENV.fetch("PROMETHEUS_METRICS_PATH", "/metrics")
end