This error is also intermittent. It doesn't happen every time I start the 
app. I would guess this is some kind of timing issue, but I can't think 
where the issue of timing comes up. 


On Monday, January 25, 2016 at 4:04:50 PM UTC-5, piast...@gmail.com wrote:
>
> I've never had this problem before, but now I'm getting this:
>
> in resource-usage there was this exception:  #<NullPointerException 
> java.lang.NullPointerException>
>
> at startup, for this function: 
>
> (defn- resource-usage []
>   (let [my-pool (at/mk-pool)]
>     (at/every 60000
>               (fn []
>                 (try
>                   (timbre/log :trace "Resource usage: "
>                               
> (monitoring/show-stats-regarding-resources-used-by-this-app))
>                   (doseq [x (monitoring/thread-top)]
>                     (timbre/log :trace x))
>                   (catch Exception e (println "in resource-usage there was 
> this exception: " e))))
>               my-pool)))
>
>
> This line:
>
>                   (timbre/log :trace "Resource usage: "
>                               
> (monitoring/show-stats-regarding-resources-used-by-this-app))
>
> Correctly gives me:
>
> Resource usage:  Memory in use (percentage/used/max-heap): ("9%" "43M" 
> "444M")
>
> So the problem comes here: 
>
>                   (doseq [x (monitoring/thread-top)]
>                     (timbre/log :trace x))
>
> Which relies on java.lang.management.ManagementFactory
>
> (defn thread-top
>   "Return a seq of threads sorted by their total userland CPU usage."
>   []
>   (let [mgr (ManagementFactory/getThreadMXBean)
>         cpu-times (map (fn [t]
>                          [(.getThreadCpuTime mgr (.getId t)) t])
>                     (threads))]
>     (map
>       (fn [[cpu t]] [cpu (.getName t) (.getId t) t])
>       (reverse (sort-by first cpu-times)))))
>     
>
> With some code borrowed from here: 
>
> http://lifeisagraph.com/2011/04/24/debugging-clojure.html
>
> Does anyone see a place where a NullPointerException might get started? 
>
> I assume this must be some circumstance unique to startup. I don't think 
> this problem repeats. 
>
>
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to