class InfluxdbSetup::Config

Attributes

config[W]
logger[RW]

Public Class Methods

config() click to toggle source
# File lib/influxdb_setup/config.rb, line 11
def self.config
  config_file = ENV.fetch('INFLUXDB_CONFIG_FILE', 'config/influxdb.yml')
  @config ||= YAML.load(ERB.new(File.read(config_file)).result)[env]
end
env() click to toggle source
# File lib/influxdb_setup/config.rb, line 16
def self.env
  defined?(Rails) ? Rails.env : ENV.fetch('RAILS_ENV', 'development')
end
new(config: self.class.config, logger: Logger.new(STDOUT)) click to toggle source
# File lib/influxdb_setup/config.rb, line 22
def initialize(config: self.class.config, logger: Logger.new(STDOUT))
  @config = config
  @logger = logger
end

Public Instance Methods

build_client(database = "", options = {}) click to toggle source
# File lib/influxdb_setup/config.rb, line 47
def build_client(database = "", options = {})
  InfluxDB::Client.new(database,
                      {
                        username: @config.fetch('username', 'root'),
                        password: @config.fetch('password', 'root'),
                        hosts:    @config['hosts'],
                        port:     @config.fetch('port', 8086),
                        async:    @config.fetch('async', false),
                        use_ssl:  @config.fetch('use_ssl', false),
                        retry:    false,
                      }.merge(options))
end
db_name() click to toggle source
# File lib/influxdb_setup/config.rb, line 27
def db_name
  @config['db_name']
end
enabled?() click to toggle source
# File lib/influxdb_setup/config.rb, line 31
def enabled?
  @config['enabled']
end
password() click to toggle source
# File lib/influxdb_setup/config.rb, line 39
def password
  @config['password']
end
retention_policies() click to toggle source
# File lib/influxdb_setup/config.rb, line 43
def retention_policies
  @config['retention_policies']
end
username() click to toggle source
# File lib/influxdb_setup/config.rb, line 35
def username
  @config['username']
end