GenRMQ.Publisher.Telemetry (gen_rmq v4.0.0) View Source

GenRMQ emits Telemetry events for publishers. It exposes several events for RabbitMQ connections, and message publishing.

Connection events

  • [:gen_rmq, :publisher, :connection, :start] - Dispatched by a GenRMQ publisher when a connection to RabbitMQ is started. The system_time value is generated via System.system_time().

    • Measurement: %{system_time: integer}
    • Metadata: %{exchange: String.t}
  • [:gen_rmq, :publisher, :connection, :stop] - Dispatched by a GenRMQ publisher when a connection to RabbitMQ has been established.

    • Measurement: %{duration: native_time}
    • Metadata: %{exchange: String.t}
  • [:gen_rmq, :publisher, :connection, :down] - Dispatched by a GenRMQ publisher when a connection to RabbitMQ has been lost. The system_time value is generated via System.system_time().

    • Measurement: %{system_time: integer}
    • Metadata: %{module: atom, reason: atom}

Message events

  • [:gen_rmq, :publisher, :message, :start] - Dispatched by a GenRMQ publisher when a message is about to be published to RabbitMQ. The system_time value is generated via System.system_time().

    • Measurement: %{system_time: integer}
    • Metadata: %{exchange: String.t, message: String.t}
  • [:gen_rmq, :publisher, :message, :stop] - Dispatched by a GenRMQ publisher when a message has been published to RabbitMQ. If an error occurs when a message is being published then the optional :error key will be present in the metadata.

    • Measurement: %{duration: native_time}
    • Metadata: %{exchange: String.t, message: String.t, error: atom()}