Letterbox.Sweeper (Letterbox v0.1.0-rc.0)

Copy Markdown View Source

A process of the app's that keeps Letterbox's table: on start, the messages that were waiting go to the runner again (Letterbox.resume/1); then, every hour, those done with for :incinerate_after days are deleted (Letterbox.incinerate/1).

children = [
  MyApp.Repo,
  {Letterbox.Sweeper, incinerate_after: 30}
]

After the repo, in the app's supervision tree. Options: :incinerate_after (days; nil keeps every message), :every (an hour, in milliseconds) and :resume (true).

With Oban, an app can do the same in a cron job of its own and run no sweeper.

Summary

Functions

Returns a specification to start this module under a supervisor.

Functions

child_spec(init_arg)

Returns a specification to start this module under a supervisor.

See Supervisor.