Advertisement
Guest User

Untitled

a guest
Mar 22nd, 2018
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. (logging/init {:file "/var/log/riemann/riemann.log"})
  3.  
  4. ;; Listen on the local interface over TCP (5555), UDP (5555), and websockets
  5. ;; (5556)
  6.  
  7. (let [host "0.0.0.0"]
  8.   (tcp-server {:host host})
  9.   (udp-server {:host host})
  10.   (repl-server {:host host})
  11.   (ws-server  {:host host}))
  12.  
  13. (periodically-expire 10)
  14.  
  15. (defn select-values [m ks]
  16.   (remove nil? (reduce #(conj %1 (get m %2)) [] ks)))
  17.  
  18. (defn format-attributes [e]
  19.   (assoc e :service (clojure.string/join "/"
  20.                       (select-values e [:service :name :type :source]))))
  21.  
  22. (streams
  23.   (smap
  24.     format-attributes
  25.     #(info %)
  26.     (tap :tap-test)))
  27.  
  28. (tests
  29.   (deftest my-test
  30.     (let [result (inject! [(riemann.common/event {:service "foo"
  31.                                                   :name "n1"
  32.                                                   :type "t1"
  33.                                                   :source "s1"})
  34.                            (riemann.common/event {:service "foo"
  35.                                                   :name "n1"})])]
  36.       (is (= (:tap-test result)
  37.             [(riemann.common/event {:service "foo/n1/t1/s1"
  38.                                     :name "n1"
  39.                                     :type "t1"
  40.                                     :source "s1"})
  41.              (riemann.common/event {:service "foo/n1"
  42.                                     :name "n1"})])))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement