Fix key names in statsd
This commit is contained in:
		
							parent
							
								
									d567f21d4f
								
							
						
					
					
						commit
						f6a5977f0b
					
				
					 1 changed files with 6 additions and 1 deletions
				
			
		| 
						 | 
				
			
			@ -1,13 +1,18 @@
 | 
			
		|||
# frozen_string_literal: true
 | 
			
		||||
RESERVED_CHARACTERS_REGEX = /[\:\|\@]/
 | 
			
		||||
 | 
			
		||||
StatsD.prefix              = 'mastodon'
 | 
			
		||||
StatsD.default_sample_rate = 1
 | 
			
		||||
 | 
			
		||||
def clean_name(str)
 | 
			
		||||
  str.gsub('::', '.').gsub(RESERVED_CHARACTERS_REGEX, '_')
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
ActiveSupport::Notifications.subscribe(/performance/) do |name, _start, _finish, _id, payload|
 | 
			
		||||
  action      = payload[:action] || :increment
 | 
			
		||||
  measurement = payload[:measurement]
 | 
			
		||||
  value       = payload[:value]
 | 
			
		||||
  key_name    = "#{name}.#{measurement}"
 | 
			
		||||
  key_name    = clean_name("#{name}.#{measurement}")
 | 
			
		||||
 | 
			
		||||
  StatsD.send(action.to_s, key_name, (value || 1))
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		
		Reference in a new issue