module InstJobsStatsd::Naming
Constants
- BASENAME
Public Class Methods
basename()
click to toggle source
The root prefix for all stat names TODO: Make this configurable
# File lib/inst_jobs_statsd/naming.rb, line 7 def self.basename BASENAME end
configure(strand_filter: nil)
click to toggle source
# File lib/inst_jobs_statsd/naming.rb, line 11 def self.configure(strand_filter: nil) @strand_filter = strand_filter end
qualified_names(stat_name, job)
click to toggle source
# File lib/inst_jobs_statsd/naming.rb, line 15 def self.qualified_names(stat_name, job) names = ["#{basename}.#{stat_name}"] tagged = tagged_stat(names[0], job) names << tagged if tagged.present? names << region_tags(names) names.flatten.compact end
tagged_stat(stat_name, job)
click to toggle source
Given a stat name, add a suffix to it to make it unique per job type – using the job's class name and method name as appropriate
# File lib/inst_jobs_statsd/naming.rb, line 26 def self.tagged_stat(stat_name, job) return unless job obj_tag, method_tag = job_tags(job) return if obj_tag.blank? tagged = "#{stat_name}.tag.#{obj_tag}" tagged += ".#{method_tag}" if method_tag.present? tagged end
Private Class Methods
split_to_tag(job)
click to toggle source
# File lib/inst_jobs_statsd/naming.rb, line 90 def self.split_to_tag(job) obj_tag, method_tag = job.tag.split(/[\.#]/, 2).map do |v| InstStatsd::Statsd.escape(v).gsub('::', '-') end [method_tag, obj_tag] end