module StatsCloud::StatsCloudHelper

This helper configures StatsCloud::Client.

Private Instance Methods

app_name_missing_error_message() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 86
def app_name_missing_error_message
  "Unable to launch StatsCloud. Please configure application_name in path/to/config/file.yml."
end
clear_data() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 28
def clear_data
  @config.delete("propagateErrors")
  @config.delete("token")
end
cluster_error_message() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 80
def cluster_error_message
  return "Unable to get information about cluster." unless @cluster

  @cluster["status"]["error"]
end
config_dir_file(file) click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 98
def config_dir_file(file)
  file_name = file[0] == "." ? file.sub(/^./, "") : file
  File.join("config", file_name)
end
config_environment(env) click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 44
def config_environment(env)
  @env = env
end
config_tags(tags) click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 48
def config_tags(tags)
  @tags = tags
end
config_token() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 56
def config_token
  @token = @config["token"] || ENV["STATSCLOUD_AUTH_TOKEN"]
end
config_values() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 33
def config_values
  @config["sourceMaps"] = source_mappings
  config_token
  validate_configuration
end
env() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 60
def env
  @env ||= @config["environment"] || rails_environment || "default"
end
error(message = error_message) click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 73
def error(message = error_message)
  stop
  statscloud_error(message)
rescue StandardError
  statscloud_error(message)
end
error_message() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 90
def error_message
  "statscloud.io #{@app} cluster have failed to deploy. #{cluster_error_message}"
end
generate_configuration(base_config) click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 19
def generate_configuration(base_config)
  if base_config
    join_configs(@config, base_config, @source_mappings, "")
  else
    base_config = get_config_from_file(@config_file)
    join_configs(@config, base_config, @source_mappings, @config_file)
  end
end
initialize_values(environment = nil, client_tags = nil) click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 12
def initialize_values(environment = nil, client_tags = nil)
  @config = {}
  @env ||= environment
  @tags ||= client_tags
  @source_mappings = { metrics: [], admins: [], dashboards: [], alerts: [] }
end
log_successful_cluster_deploy() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 68
def log_successful_cluster_deploy
  log_info successful_message
  console_logger.info successful_message
end
os() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 111
def os
  Socket
end
rails_environment() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 103
def rails_environment
  ENV["RAILS_ENV"]
end
statscloud_error(message) click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 107
def statscloud_error(message)
  StatsCloud::ClientError.new(message)
end
successful_message() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 94
def successful_message
  "statscloud.io support configured, dashboard URLs are \n#{(@cluster['grafanaDashboardsUrls'] || []).join("\n")}"
end
tags() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 64
def tags
  @tags ||= @config["tags"] || [os.gethostname]
end
update_config_file(file) click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 52
def update_config_file(file)
  @config_file = rails_environment ? config_dir_file(file) : file
end
validate_configuration() click to toggle source
# File lib/statscloud/helpers/statscloud_client/statscloud_helper.rb, line 39
def validate_configuration
  @app = @config["application"]
  raise error(app_name_missing_error_message) if @app.nil? || @app.empty?
end