                          auto-start?    true}}]]
   (let [w (->Worker conn qname (atom false)
                     {:handler        handler
+                     :monitor        monitor
                      :lock-ms        lock-ms
                      :eoq-backoff-ms eoq-backoff-ms
                      :throttle-ms    throttle-ms})]

                     Can be a (fn [ndry-runs]) => ms. Sleep synchronized for all
                     queue workers.
   :throttle-ms    - Thread sleep period between each poll."
  [conn qname & [{:keys [handler lock-ms eoq-backoff-ms throttle-ms auto-start?]
                  :or   {handler (fn [{:keys [message attempt]}]
                                   (timbre/info qname message attempt)
                                   {:status :success})

    (when-not @running?
      (reset! running? true)
      (future
        (let [{:keys [handler monitor throttle-ms eoq-backoff-ms]} opts
              qk    (partial qkey qname)
              done  (fn [mid] (wcar conn (car/sadd (qk "recently-done") mid)))
              retry (fn [mid & [backoff-ms]]
