Skip to content

Commit

Permalink
redirect all stdio to regular worker log file
Browse files Browse the repository at this point in the history
  • Loading branch information
Nathan Marz committed Jan 5, 2012
1 parent 8833764 commit a6fcc6e
Show file tree
Hide file tree
Showing 3 changed files with 19 additions and 1 deletion.
2 changes: 2 additions & 0 deletions src/clj/backtype/storm/daemon/worker.clj
Expand Up @@ -76,6 +76,8 @@
(defserverfn mk-worker [conf mq-context storm-id supervisor-id port worker-id]
(log-message "Launching worker for " storm-id " on " supervisor-id ":" port " with id " worker-id
" and conf " conf)
(if-not (local-mode? conf)
(redirect-stdio-to-log4j!))
(let [active (atom true)
storm-active-atom (atom false)
cluster-state (cluster/mk-distributed-cluster-state conf)
Expand Down
6 changes: 6 additions & 0 deletions src/clj/backtype/storm/log.clj
Expand Up @@ -15,3 +15,9 @@

(defmacro log-warn [& args]
`(log/warn (str ~@args)))

(defn log-capture! [& args]
(apply log/log-capture! args))

(defn log-stream [& args]
(apply log/log-stream args))
12 changes: 11 additions & 1 deletion src/clj/backtype/storm/util.clj
Expand Up @@ -13,7 +13,7 @@
(:import [org.apache.commons.io FileUtils])
(:import [org.apache.commons.exec ExecuteException])
(:import [org.json.simple JSONValue])
(:import [java.util Timer])
(:import [clojure.lang RT])
(:require [clojure.contrib [str-utils2 :as str]])
(:require [clojure [set :as set]])
(:use [clojure walk])
Expand Down Expand Up @@ -568,3 +568,13 @@
(cond ~@guards
true (throw ~error-local)
)))))

(defn redirect-stdio-to-log4j! []
;; set-var-root doesn't work with *out* and *err*, so digging deeper here
(.set RT/OUT (java.io.OutputStreamWriter.
(log-stream :info "STDIO")))
(.set RT/ERR (PrintWriter.
(java.io.OutputStreamWriter.
(log-stream :error "STDIO"))
true))
(log-capture! "STDIO"))

0 comments on commit a6fcc6e

Please sign in to comment.