Crown.Oracles.ObanPeer (crown v0.3.0)

Copy Markdown View Source

An Oban-based oracle that mirrors Oban.Peer.leader?/2 leadership.

This oracle doesn't acquire leadership itself. Instead, Crown follows the leadership already maintained by Oban's peer system.

Options

  • :oban_name (optional, default Oban) - Oban instance name passed to Oban.Peer.leader?/2.
  • :timeout (optional, default 5000) - timeout in milliseconds for Oban.Peer.leader?/2.
  • :refresh_delay (optional, default 5000) - milliseconds until the next leadership check after a successful claim/refresh.

Example

{Crown,
 name: :my_worker,
 oracle: {Crown.Oracles.ObanPeer, oban_name: Oban},
 child_spec: MyApp.SingletonWorker}