Module: Pgbus::Instrumentation
- Defined in:
- lib/pgbus/instrumentation.rb
Overview
Lightweight instrumentation via ActiveSupport::Notifications.
All events are prefixed with “pgbus.” and carry timing information automatically when used with the block form of AS::Notifications.instrument.
Events emitted:
pgbus.client.send_message — single message enqueue
pgbus.client.send_batch — batch enqueue
pgbus.client.read_batch — batch dequeue
pgbus.client.read_message — single message dequeue
pgbus.executor.execute — full job execution (deserialize + perform + archive)
pgbus.serializer.serialize — job/event serialization
pgbus.serializer.deserialize — job/event deserialization
Class Method Summary collapse
Class Method Details
.instrument(event, payload = {}, &block) ⇒ Object
21 22 23 24 25 26 27 |
# File 'lib/pgbus/instrumentation.rb', line 21 def instrument(event, payload = {}, &block) if defined?(ActiveSupport::Notifications) ActiveSupport::Notifications.instrument(event, payload, &block) elsif block yield payload end end |