toniq
toniq copied to clipboard
Simple and reliable background job processing library for Elixir.
`uuid` was renamed to `elixir_uuid`. withouth this change, you'll run into this issue: https://github.com/zyro/elixir-uuid/issues/33
It would be great if toniq could use ets/dets as a backend in place of redis, to reduce dependencies for use-cases where persistence of jobs/tasks isn't necessary.
The `Job` structure is used internally. Invoking the methods of `enqueue` is the same way. The only change would be in the struct result. ``` > Toniq.enqueue(TestWorker, [name: "Joe"]) %Toniq.Job...
When running a single OTP server and using hot upgrades, Toniq 1.2.3 will occasionally crash, preventing the upgrade. From the logs, I see a few different crashes: ``` =CRASH REPORT====...
This commit adds a simple admin UI page that will be available at `http://localhost:4000/status`. The port used can be configured from a configuration key (`http_port`). At the moment the UI...
Is there a way to add unique jobs so you cannot requeue another of the the same job like in: https://github.com/mhenrixon/sidekiq-unique-jobs ?
It would be nice to have methods to list current runing jobs and pending jobs. If you think it's interesting I could try to implement it myself.
In Toniq's current behavior, failed jobs are logged. This PR will maintain that as the default behavior but allow developers implementing logic using the Toniq.Worker module to implement a `handle_error(job,...
Hi I've been thinking about quite "chatty" logs from toniq in development. Would you be open to a configuration option `log_level`? I'd be happy to implement it myself.
``` [error] Process #PID raised an exception ** (Protocol.UndefinedError) protocol String.Chars not implemented for {:noproc, {:gen_server, :call, [#PID, :stop]}} (elixir) lib/string/chars.ex:3: String.Chars.impl_for!/1 (elixir) lib/string/chars.ex:17: String.Chars.to_string/1 (toniq) lib/toniq/job_process.ex:40: Toniq.JobProcess.wait_for_result/0 (toniq) lib/toniq/job_process.ex:3:...