@@ -102,30 +102,33 @@ def is_first_generic_worker_on_machine?
102102 def setup_metrics_endpoint ( config )
103103 prometheus_dir = File . join ( config . get ( :directories , :tmpdir ) , 'prometheus' )
104104 Prometheus ::Client . config . data_store = Prometheus ::Client ::DataStores ::DirectFileStore . new ( dir : prometheus_dir )
105- return unless is_first_generic_worker_on_machine?
106105
107- FileUtils . mkdir_p ( prometheus_dir )
106+ if is_first_generic_worker_on_machine?
107+ FileUtils . mkdir_p ( prometheus_dir )
108108
109- # Resetting metrics on startup
110- Dir [ "#{ prometheus_dir } /*.bin" ] . each do |file_path |
111- File . unlink ( file_path )
112- end
109+ # Resetting metrics on startup
110+ Dir [ "#{ prometheus_dir } /*.bin" ] . each do |file_path |
111+ File . unlink ( file_path )
112+ end
113113
114- metrics_app = Rack ::Builder . new do
115- use Prometheus ::Middleware ::Exporter , path : '/metrics'
114+ metrics_app = Rack ::Builder . new do
115+ use Prometheus ::Middleware ::Exporter , path : '/metrics'
116116
117- map '/' do
118- run lambda { |env |
119- # Return 404 for any other request
120- [ '404' , { 'Content-Type' => 'text/plain' } , [ 'Not Found' ] ]
121- }
117+ map '/' do
118+ run lambda { |env |
119+ # Return 404 for any other request
120+ [ '404' , { 'Content-Type' => 'text/plain' } , [ 'Not Found' ] ]
121+ }
122+ end
122123 end
123- end
124124
125- Thread . new do
126- server = Puma ::Server . new ( metrics_app )
127- server . add_tcp_listener '0.0.0.0' , config . get ( :prometheus_port ) || 9394
128- server . run
125+ Thread . new do
126+ server = Puma ::Server . new ( metrics_app )
127+ server . add_tcp_listener '0.0.0.0' , config . get ( :prometheus_port ) || 9394
128+ server . run
129+ end
129130 end
131+
132+ CloudController ::DependencyLocator . instance . cc_worker_prometheus_updater . update_gauge_metric ( :cc_db_connection_pool_timeouts_total , 0 , labels : { process_type : 'cc-worker' } )
130133 end
131134end
0 commit comments