summaryrefslogtreecommitdiff
path: root/sample/logger/shifting.rb
blob: bd8852a4ae10ac2ae20a376dec720b7460885fda (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
#!/usr/bin/env ruby

require 'logger'

logfile = 'shifting.log'
# Max 3 age ... logShifting.log, logShifting.log.0, and logShifting.log.1
shift_age = 3
# Shift log file about for each 1024 bytes.
shift_size = 1024

log = Logger.new(logfile, shift_age, shift_size)

def do_log(log)
  log.debug('do_log1') { 'd' * rand(100) }
  log.info('do_log2') { 'i' * rand(100) }
  log.warn('do_log3') { 'w' * rand(100) }
  log.error('do_log4') { 'e' * rand(100) }
  log.fatal('do_log5') { 'f' * rand(100) }
  log.unknown('do_log6') { 'u' * rand(100) }
end

(1..10).each do
  do_log(log)
end

puts 'See shifting.log and shifting.log.[01].'