Testing out some riemann stat collection

This commit is contained in:
Dave Della Costa 2014-11-04 17:48:45 +09:00
parent 7d61caea52
commit 574aa3a825
3 changed files with 24 additions and 6 deletions

View file

@ -15,7 +15,11 @@
[org.postgresql/postgresql "9.2-1003-jdbc4"]
[clj-logging-config "1.9.10"]
[zip-visit "1.0.2"]
[pjstadig/humane-test-output "0.6.0"]]
[pjstadig/humane-test-output "0.6.0"]
;; Metrics
[riemann-clojure-client "0.2.11"]
]
:profiles {:test {:dependencies [[org.clojure/tools.nrepl "0.2.3"]
[environ "0.4.0"]

View file

@ -7,7 +7,12 @@
[views.db.util :refer [with-retry]]
[clojure.tools.logging :refer [debug info warn error]]
[clojure.core.async :refer [put! <! go thread]]
[clojure.java.jdbc :as j]))
[clojure.java.jdbc :as j]
;; Metrics
[views.riemann :refer [rclient]]
[riemann.client :refer [send-event]]
))
(def default-ns :default-ns)
@ -60,8 +65,10 @@
(when (seq view-sigs)
(doseq [vs view-sigs]
(thread
(let [iv (subscribe-and-compute db persistence templates vs namespace subscriber-key)]
(send-fn* send-fn subscriber-key :views.init iv)))))))
(let [iv (subscribe-and-compute db persistence templates vs namespace subscriber-key)
start (System/currentTimeMillis)]
(send-fn* send-fn subscriber-key :views.init iv)
(send-event rclient {:service "subscription-init-time" :metric (- (System/currentTimeMillis) start)})))))))
(unsubscribe-views
[this msg]
@ -140,7 +147,9 @@
(defn send-deltas
"Send deltas out to subscribers."
[deltas subs namespace {:keys [send-fn templates] :as config}]
(let [deltas (mapv #(post-process-deltas % templates) (flatten-deltas deltas))]
(let [deltas (mapv #(post-process-deltas % templates) (flatten-deltas deltas))
start (System/currentTimeMillis)]
(doseq [[sk deltas*] (subscriber-deltas subs deltas)]
(debug "Sending deltas " deltas* " to subscriber " sk)
(send-fn* send-fn sk :views.deltas deltas*))))
(send-fn* send-fn sk :views.deltas deltas*))
(send-event rclient {:service "delta-send-time" :metric (- (System/currentTimeMillis) start)})))

5
src/views/riemann.clj Normal file
View file

@ -0,0 +1,5 @@
(ns views.riemann
(:require
[riemann.client :refer [tcp-client]]))
(defonce rclient (tcp-client {:host "127.0.0.1" :port 5555}))