Sha256: 003c5c2b3ebbb0d82b967f363d1819e33c4018951031601d5f69fe978a9fda82

Contents?: true

Size: 673 Bytes

Versions: 14

Compression:

Stored size: 673 Bytes

Contents

module Vitals::Formats
  class ProductionFormat
    attr_accessor :environment
    attr_accessor :host
    attr_accessor :facility

    def initialize(environment:'development', facility:'default', host:'localhost')
      @environment = environment
      @facility = facility
      @host = host
      @prefix = [environment, host, facility].compact.map{|m| Vitals::Utils.normalize_metric(m) }
                                             .join(".").freeze
      # TODO prematerialize working prefix with metric name sanitation
    end

    def format(m)
      return @prefix if (m.nil? || m.empty?)
      "#{@prefix}.#{Vitals::Utils.normalize_metric(m)}"
    end
  end
end

Version data entries

14 entries across 14 versions & 1 rubygems

Version Path
vitals-0.12.0 lib/vitals/formats/production_format.rb
vitals-0.11.1 lib/vitals/formats/production_format.rb
vitals-0.11.0 lib/vitals/formats/production_format.rb
vitals-0.10.1 lib/vitals/formats/production_format.rb
vitals-0.10.0 lib/vitals/formats/production_format.rb
vitals-0.9.1 lib/vitals/formats/production_format.rb
vitals-0.9.0 lib/vitals/formats/production_format.rb
vitals-0.8.1 lib/vitals/formats/production_format.rb
vitals-0.8.0 lib/vitals/formats/production_format.rb
vitals-0.7.0 lib/vitals/formats/production_format.rb
vitals-0.6.0 lib/vitals/formats/production_format.rb
vitals-0.5.0 lib/vitals/formats/production_format.rb
vitals-0.4.0 lib/vitals/formats/production_format.rb
vitals-0.3.0 lib/vitals/formats/production_format.rb