EctoPGMQ.Metrics (ecto_pgmq v1.0.0)

Copy Markdown View Source

Schema for PGMQ queue metrics.

Summary

Types

t()

PGMQ queue metrics.

Functions

Returns a query for queue metrics.

Types

t()

@type t() :: %EctoPGMQ.Metrics{
  lifetime_messages: non_neg_integer(),
  newest_message_age: Duration.t() | nil,
  oldest_message_age: Duration.t() | nil,
  queue: EctoPGMQ.Queue.name(),
  requested_at: DateTime.t(),
  total_messages: non_neg_integer(),
  visible_messages: non_neg_integer()
}

PGMQ queue metrics.

Functions

query()

@spec query() :: Ecto.Query.t()

Returns a query for queue metrics.

Metrics are fetched transparently when querying queues via EctoPGMQ.Queue.query/0.

Warning

This query only supports read operations.

Examples

iex> metrics = Repo.all(query())
iex> Enum.all?(metrics, &is_struct(&1, EctoPGMQ.Metrics))
true