Advertisement
Guest User

Untitled

a guest
Feb 12th, 2016
69
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.04 KB | None | 0 0
  1. (ns test-app-docker-metrics.launcher.launch-prod-peers
  2. (:gen-class)
  3. (:require [aero.core :refer [read-config]] [clojure.core.async :refer [<!! chan]]
  4. [test-app-docker-metrics.jobs.sample-submit-job] [onyx.plugin.kafka] [onyx.plugin.sql]
  5. [taoensso.timbre :as t]
  6. [taoensso.timbre.appenders.3rd-party.rotor :as rotor]
  7. [onyx.lifecycle.metrics.metrics]
  8. [onyx.lifecycle.metrics.timbre]))
  9.  
  10. (defn standard-out-logger
  11. "Logger to output on std-out, for use with docker-compose" [data]
  12. (let [{:keys [output-fn]} data]
  13. (println (output-fn data))))
  14.  
  15. (defn -main [n & args]
  16. (let [n-peers (Integer/parseInt n)
  17. config (read-config (clojure.java.io/resource "config.edn") {:profile :default})
  18. peer-config (-> (:peer-config config)
  19. (assoc :onyx.log/config {:appenders
  20. {:standard-out {:enabled? true
  21. :async? false
  22. :output-fn t/default-output-fn
  23. :fn standard-out-logger}
  24. :rotor (-> (rotor/rotor-appender
  25. {:path "onyx.log"
  26. :max-size (* 512 102400)
  27. :backlog 5})
  28. (assoc :min-level :info))}}))
  29. peer-group (onyx.api/start-peer-group peer-config)
  30. env (onyx.api/start-env (:env-config config))
  31. peers (onyx.api/start-peers n-peers peer-group)]
  32. (println "Attempting to connect to Zookeeper @" (:zookeeper/address peer-config))
  33. (.addShutdownHook (Runtime/getRuntime)
  34. (Thread.
  35. (fn []
  36. (doseq [v-peer peers]
  37. (onyx.api/shutdown-peer v-peer))
  38. (onyx.api/shutdown-peer-group peer-group)
  39. (shutdown-agents)))) (println "Started peers. Blocking forever.")
  40. ;; Block forever.
  41. (<!! (chan))))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement