Module: PGMQ::Client::Metrics
- Included in:
- PGMQ::Client
- Defined in:
- lib/pgmq/client/metrics.rb
Overview
Queue metrics and monitoring
This module handles retrieving queue metrics such as queue length, message age, and total message counts.
Instance Method Summary collapse
-
#metrics(queue_name) ⇒ PGMQ::Metrics
Gets metrics for a specific queue.
-
#metrics_all ⇒ Array<PGMQ::Metrics>
Gets metrics for all queues.
Instance Method Details
#metrics(queue_name) ⇒ PGMQ::Metrics
Gets metrics for a specific queue
19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/pgmq/client/metrics.rb', line 19 def metrics(queue_name) validate_queue_name!(queue_name) result = with_connection do |conn| conn.exec_params("SELECT * FROM pgmq.metrics($1::text)", [queue_name]) end return nil if result.ntuples.zero? PGMQ::Metrics.new(result[0]) end |
#metrics_all ⇒ Array<PGMQ::Metrics>
Gets metrics for all queues
40 41 42 43 44 45 46 |
# File 'lib/pgmq/client/metrics.rb', line 40 def metrics_all result = with_connection do |conn| conn.exec("SELECT * FROM pgmq.metrics_all()") end result.map { |row| PGMQ::Metrics.new(row) } end |