On Tue, 2012-01-17 at 07:56 +0900, Christopher G. wrote:
What would be the best way to get the current time formatted per the log
entries and collect a range of times say from current to 15 minutes
previously.
$ cat test.log
01/10/2012 14:46:02:87 Some Data
01/10/2012 14:46:03:319 Some Stuff
01/10/2012 14:46:04:160 OMFG
01/10/2012 14:46:04:160 okay
assume format is m/d/y
require ‘rio’
def test
now = Time.utc(2012, 1, 10, 14, 59, 00)
puts "Explicitely set now to " + now.to_s
puts “”
rio('/home/rthompso/test.log').lines { |line|
dt, tm, msg = line.split
# assume format is m/d/y
month, day, year = dt.split('/')
hr, min, secfrac = tm.split(':')
ts = year +'-' + month + '-' + day + ' ' + tm
at = Time.utc(year, month, day, hr, min, secfrac)
p at
cutoff = (now - (15 * 60))
puts "15 mins ago was " + (now - (15 * 60)).to_s
if ( at >= Time.at(cutoff) )
puts line
end
}
#f = rio(’/home/rthompso/test.log’) > ?-
puts “”
puts “”
puts “”
now = Time.utc(2012, 1, 10, 15, 01, 5)
puts "Explicitely set now to " + now.to_s
puts ""
rio('/home/rthompso/test.log').lines { |line|
dt, tm, msg = line.split
# assume format is m/d/y
month, day, year = dt.split('/')
hr, min, secfrac = tm.split(':')
ts = year +'-' + month + '-' + day + ' ' + tm
at = Time.utc(year, month, day, hr, min, secfrac)
p at
cutoff = (now - (15 * 60))
puts "15 mins ago was " + (now - (15 * 60)).to_s
if ( at >= Time.at(cutoff) )
puts line
end
}
end
irb(main):089:0> test
Explicitly set now to Tue Jan 10 14:59:00 UTC 2012
Tue Jan 10 14:46:02 UTC 2012
15 mins ago was Tue Jan 10 14:44:00 UTC 2012
01/10/2012 14:46:02:87 Some Data
Tue Jan 10 14:46:03 UTC 2012
15 mins ago was Tue Jan 10 14:44:00 UTC 2012
01/10/2012 14:46:03:319 Some Stuff
Tue Jan 10 14:46:04 UTC 2012
15 mins ago was Tue Jan 10 14:44:00 UTC 2012
01/10/2012 14:46:04:160 OMFG
Tue Jan 10 14:46:04 UTC 2012
15 mins ago was Tue Jan 10 14:44:00 UTC 2012
01/10/2012 14:46:04:160 okay
Explicitly set now to Tue Jan 10 15:01:05 UTC 2012
Tue Jan 10 14:46:02 UTC 2012
15 mins ago was Tue Jan 10 14:46:05 UTC 2012
Tue Jan 10 14:46:03 UTC 2012
15 mins ago was Tue Jan 10 14:46:05 UTC 2012
Tue Jan 10 14:46:04 UTC 2012
15 mins ago was Tue Jan 10 14:46:05 UTC 2012
Tue Jan 10 14:46:04 UTC 2012
15 mins ago was Tue Jan 10 14:46:05 UTC 2012