Re-add StatsD support through the nsa gem (#26310)
				
					
				
			This commit is contained in:
		
							parent
							
								
									120f5802c0
								
							
						
					
					
						commit
						12c43e4ab5
					
				
					 3 changed files with 29 additions and 0 deletions
				
			
		
							
								
								
									
										1
									
								
								Gemfile
									
									
									
									
									
								
							
							
						
						
									
										1
									
								
								Gemfile
									
									
									
									
									
								
							| 
						 | 
				
			
			@ -58,6 +58,7 @@ gem 'kaminari', '~> 1.2'
 | 
			
		|||
gem 'link_header', '~> 0.0'
 | 
			
		||||
gem 'mime-types', '~> 3.4.1', require: 'mime/types/columnar'
 | 
			
		||||
gem 'nokogiri', '~> 1.15'
 | 
			
		||||
gem 'nsa', github: 'jhawthorn/nsa', ref: 'e020fcc3a54d993ab45b7194d89ab720296c111b'
 | 
			
		||||
gem 'oj', '~> 3.14'
 | 
			
		||||
gem 'ox', '~> 2.14'
 | 
			
		||||
gem 'parslet'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										13
									
								
								Gemfile.lock
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								Gemfile.lock
									
									
									
									
									
								
							| 
						 | 
				
			
			@ -7,6 +7,17 @@ GIT
 | 
			
		|||
      hkdf (~> 0.2)
 | 
			
		||||
      jwt (~> 2.0)
 | 
			
		||||
 | 
			
		||||
GIT
 | 
			
		||||
  remote: https://github.com/jhawthorn/nsa.git
 | 
			
		||||
  revision: e020fcc3a54d993ab45b7194d89ab720296c111b
 | 
			
		||||
  ref: e020fcc3a54d993ab45b7194d89ab720296c111b
 | 
			
		||||
  specs:
 | 
			
		||||
    nsa (0.2.8)
 | 
			
		||||
      activesupport (>= 4.2, < 7.2)
 | 
			
		||||
      concurrent-ruby (~> 1.0, >= 1.0.2)
 | 
			
		||||
      sidekiq (>= 3.5)
 | 
			
		||||
      statsd-ruby (~> 1.4, >= 1.4.0)
 | 
			
		||||
 | 
			
		||||
GIT
 | 
			
		||||
  remote: https://github.com/mastodon/rails-settings-cached.git
 | 
			
		||||
  revision: 86328ef0bd04ce21cc0504ff5e334591e8c2ccab
 | 
			
		||||
| 
						 | 
				
			
			@ -706,6 +717,7 @@ GEM
 | 
			
		|||
      net-scp (>= 1.1.2)
 | 
			
		||||
      net-ssh (>= 2.8.0)
 | 
			
		||||
    stackprof (0.2.25)
 | 
			
		||||
    statsd-ruby (1.5.0)
 | 
			
		||||
    stoplight (3.0.1)
 | 
			
		||||
      redlock (~> 1.0)
 | 
			
		||||
    strong_migrations (0.8.0)
 | 
			
		||||
| 
						 | 
				
			
			@ -857,6 +869,7 @@ DEPENDENCIES
 | 
			
		|||
  net-http (~> 0.3.2)
 | 
			
		||||
  net-ldap (~> 0.18)
 | 
			
		||||
  nokogiri (~> 1.15)
 | 
			
		||||
  nsa!
 | 
			
		||||
  oj (~> 3.14)
 | 
			
		||||
  omniauth (~> 1.9)
 | 
			
		||||
  omniauth-cas (~> 2.0)
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										15
									
								
								config/initializers/statsd.rb
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								config/initializers/statsd.rb
									
									
									
									
									
										Normal file
									
								
							| 
						 | 
				
			
			@ -0,0 +1,15 @@
 | 
			
		|||
# frozen_string_literal: true
 | 
			
		||||
 | 
			
		||||
if ENV['STATSD_ADDR'].present?
 | 
			
		||||
  host, port = ENV['STATSD_ADDR'].split(':')
 | 
			
		||||
 | 
			
		||||
  statsd = Statsd.new(host, port)
 | 
			
		||||
  statsd.namespace = ENV.fetch('STATSD_NAMESPACE') { ['Mastodon', Rails.env].join('.') }
 | 
			
		||||
 | 
			
		||||
  NSA.inform_statsd(statsd) do |informant|
 | 
			
		||||
    informant.collect(:action_controller, :web)
 | 
			
		||||
    informant.collect(:active_record, :db)
 | 
			
		||||
    informant.collect(:active_support_cache, :cache)
 | 
			
		||||
    informant.collect(:sidekiq, :sidekiq) if ENV['STATSD_SIDEKIQ'] == 'true'
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
		Loading…
	
		Reference in a new issue