           (if (nil? user)
             (log/log-info "Metric reader " i " loop idle. Looping...")
             (try
+              (log/log-info (str "executing update request for " (.getName user)))
               (update-metric! user)
               (catch Exception e (log/log-error "caught exception: " (.getMessage e))))))))))
 

(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 collecting vms for user "
            (.getName user)
            " on cloud "
            (.getConnectorInstanceName connector))
          (log/log-info (str "executed collect request for " (.getName user) " and " (.getConnectorInstanceName connector))))))
    (go (>! ch (Collector/collect user connector)))))

(defn update-metric!
