     (while true
       (<!! (timeout timeout-online-loop))
       (let [users (online-users)]
+        (log/log-info "inserting online users requests")
         (insert-collection-requests users)
         (insert-update-metric-requests users))))
   (thread
     (while true
       (<!! (timeout timeout-all-users-loop))
       (let [users (users)]
+        (log/log-info "inserting all users requests")
         (insert-collection-requests users))
         (insert-update-metric-requests users))))
 

(def collector-chan-size 64)
(def metrics-update-chan-size 64)
(def number-of-readers 32)
(def timeout-all-users-loop (seconds-in-msecs 120))
(def timeout-online-loop (seconds-in-msecs 10))
(def timeout-collect (seconds-in-msecs 15))
(def timeout-processing-loop (seconds-in-msecs 600))

  (let [ch (chan 1)]
    (go
      (let [[v c] (alts! [ch (timeout timeout-collect)])]
        (if (nil? v)
          (log/log-error
            "Timeout updating metrics for user "
            (.getName user))
          (log/log-info (str "executed update-metric request for " (.getName user))))))
    (go (>! ch (updator/update user)))))

(def not-nil? (complement nil?))
