File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 1+ Rails . application . config . to_prepare do
2+ original_subscriber_entry = if defined? ( Appsignal ::Integrations ::ActiveSupportEventReporter ::Subscriber )
3+ Rails . event . instance_variable_get ( :@subscribers ) . find do |entry |
4+ entry [ :subscriber ] . is_a? Appsignal ::Integrations ::ActiveSupportEventReporter ::Subscriber
5+ end
6+ end
7+
8+ next unless original_subscriber_entry
9+
10+ subscribers . delete original_subscriber_entry
11+
12+ filtered_subscriber = Class . new do
13+ def initialize ( original_subscriber )
14+ @original_subscriber = original_subscriber
15+ end
16+
17+ def emit ( event )
18+ @original_subscriber . emit ( event ) unless healthcheck? ( event )
19+ end
20+
21+ private
22+
23+ def healthcheck? ( event )
24+ event . dig ( :payload , :controller ) == "Rails::HealthController" && event . dig ( :payload , :action ) == "show"
25+ end
26+ end
27+
28+ Rails . event . subscribe (
29+ filtered_subscriber . new ( original_subscriber_entry [ :subscriber ] ) ,
30+ &original_subscriber_entry [ :filter ]
31+ )
32+ end
You can’t perform that action at this time.
0 commit comments