Module: LogSweeper
- Extended by:
- LogSweeper
- Included in:
- LogSweeper
- Defined in:
- lib/log_sweeper.rb,
lib/log_sweeper/version.rb
Constant Summary collapse
- VERSION =
"1.2.0"
Instance Method Summary collapse
-
#run(path, logs_lifetime_days_count: 10, logger: Logger.new(STDOUT)) ⇒ Object
Clean up provided log directory.
Instance Method Details
#run(path, logs_lifetime_days_count: 10, logger: Logger.new(STDOUT)) ⇒ Object
Clean up provided log directory
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 |
# File 'lib/log_sweeper.rb', line 16 def run(path, logs_lifetime_days_count: 10, logger: Logger.new(STDOUT)) lifetime_threshold = logs_lifetime_days_count * 24 * 3600 Pathname.new(path).each_child do |entry| next unless entry.file? filename = entry.basename.to_s if filename =~ /\.log\b/ && Time.now - entry.mtime > lifetime_threshold logger.info "deleting #{entry}" entry.delete elsif filename =~ /\.log\.\d+$/ logger.info "gzipping #{entry}" compress_file(entry) entry.delete else logger.info "skipping #{entry}" end end true end |