Skip to content
/ exq_ui Public

UI Dashboard for Exq, a job processing library for Elixir. Exq UI provides the UI dashboard to display stats on job processing.

License

Notifications You must be signed in to change notification settings

akira/exq_ui

Repository files navigation

ExqUI

Hex.pm

ExqUI provides a UI dashboard for Exq, a job processing library compatible with Resque / Sidekiq for the Elixir language. ExqUI allow you to see various job processing stats, as well as details on failed, retried, scheduled jobs, etc.

Configuration

  1. ExqUI depends on the api server component of the exq. The user of ExqUI is expected to start the Exq with proper config. The only config required on ExqUI side is the name of the api server. It's set to Exq.Api by default.

    config :exq_ui, api_name: Exq.Api

    There are two typical scenarios

    If ExqUI is embedded in a worker node which runs exq jobs, then nothing special needs to be done. Exq by default starts the api server on all worker nodes.

    If ExqUI needs to be embedded in a node which is not a worker, then Exq can be started in api mode, which will only start the api gen server and will not pickup jobs for execution. This can be done by configuring the mode.

    config :exq, mode: :api
  2. ExqUI uses Phoenix LiveView. If you already use LiveView, skip to next step. Otherwise follow LiveView installation docs.

  3. In your phoenix router import ExqUIWeb.Router and add live_exq_ui(path)

defmodule DemoWeb.Router do use Phoenix.Router import ExqUIWeb.Router pipeline :browser do plug :fetch_session plug :protect_from_forgery end scope "/", DemoWeb do pipe_through :browser live_exq_ui("/exq") end end

Exq Scheduler

ExqUI provides support for Exq Scheduler. It can be enabled by giving a name to exq scheduler and specifying the same name in exq ui config.

config :exq_scheduler, name: ExqScheduler config :exq_ui, exq_scheduler_name: ExqScheduler

Development

mix setup # on first run mix run --no-halt dev.exs open http://localhost:4000/exq

About

UI Dashboard for Exq, a job processing library for Elixir. Exq UI provides the UI dashboard to display stats on job processing.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 40