lib/fnordmetric/event.rb in fnordmetric-0.7.4 vs lib/fnordmetric/event.rb in fnordmetric-0.7.5
- old
+ new
@@ -7,16 +7,24 @@
#end
def self.all(opts)
range_opts = { :withscores => true }
range_opts.merge!(:limit => [0,opts[:limit]]) if opts[:limit]
- opts[:redis].zrevrangebyscore(
+ events = opts[:redis].zrevrangebyscore(
"#{opts[:namespace_prefix]}-timeline",
'+inf', opts[:since]||'0',
range_opts
- ).in_groups_of(2).map do |event_id, ts|
+ )
+
+ unless events.first.is_a?(Array)
+ events = events.in_groups_of(2).map do |event_id, ts|
+ [event_id, Float(ts)]
+ end
+ end
+
+ events.map do |event_id, ts|
next if event_id.blank?
- find(event_id, opts).tap{ |e| e.time = ts }
+ find(event_id, opts).tap{ |e| e.time = "%.f" % ts }
end
end
def self.by_type(_type, opts)
opts[:redis].lrange(