diff --git a/lib/sensu/transport/rabbitmq.rb b/lib/sensu/transport/rabbitmq.rb
index <HASH>..<HASH> 100644
--- a/lib/sensu/transport/rabbitmq.rb
+++ b/lib/sensu/transport/rabbitmq.rb
@@ -4,6 +4,22 @@ require "amqp"
 
 require File.join(File.dirname(__FILE__), "base")
 
+module AMQP
+  class Session
+    def send_heartbeat
+      if tcp_connection_established? && !reconnecting?
+        send_frame(AMQ::Protocol::HeartbeatFrame)
+        if !@handling_skipped_heartbeats && @last_server_heartbeat
+          if @last_server_heartbeat < (Time.now - (self.heartbeat_interval * 2))
+            logger.error("detected missing amqp heartbeats")
+            self.handle_skipped_heartbeats
+          end
+        end
+      end
+    end
+  end
+end
+
 module Sensu
   module Transport
     class RabbitMQ < Base
[amqp-heartbeats] patch amqp lib to fix heartbeats

                  - upstream is sending a frame on a closed connection