Sha256: 59374929abc5933e8e3b16fbb484ad3547d5c1133732ecdb9d1c91d30bbfb46b

Contents?: true

Size: 1.42 KB

Versions: 25

Compression:

Stored size: 1.42 KB

Contents

# Copyright (c) 2013-2015 SUSE LLC
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of version 3 of the GNU General Public License as
# published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.   See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, contact SUSE LLC.
#
# To contact SUSE about this file by physical or electronic mail,
# you may find current contact information at www.suse.com

module Machinery
  @@logger = nil

  def self.initialize_logger(log_file)
    # We rotate one old log file of 21 MB
    if File.exists?(log_file) && File.size(log_file) > 21*1024*1024
      rotated_file = log_file + ".0"
      FileUtils.rm(rotated_file) if File.exists?(rotated_file)
      FileUtils.mv(log_file, rotated_file)
    end

    if !File.exists?(log_file)
      dirname = File.dirname(log_file)
      if !Dir.exists?(dirname)
        FileUtils.mkdir_p(dirname)
        File.chmod(0700, dirname)
      end
      FileUtils.touch(log_file)
      FileUtils.chmod(0600, log_file)
    end

    @@logger = Logger.new(log_file)
  end

  def self.logger
    initialize_logger(DEFAULT_LOG_FILE) unless @@logger

    @@logger
  end
end

Version data entries

25 entries across 25 versions & 1 rubygems

Version Path
machinery-tool-1.17.0 lib/machinery_logger.rb
machinery-tool-1.16.4 lib/machinery_logger.rb
machinery-tool-1.16.3 lib/machinery_logger.rb
machinery-tool-1.16.2 lib/machinery_logger.rb
machinery-tool-1.16.1 lib/machinery_logger.rb
machinery-tool-1.16.0 lib/machinery_logger.rb
machinery-tool-1.15.0 lib/machinery_logger.rb
machinery-tool-1.14.2 lib/machinery_logger.rb
machinery-tool-1.14.1 lib/machinery_logger.rb
machinery-tool-1.14.0 lib/machinery_logger.rb
machinery-tool-1.13.0 lib/machinery_logger.rb
machinery-tool-1.12.0 lib/machinery_logger.rb
machinery-tool-1.11.2 lib/machinery_logger.rb
machinery-tool-1.11.1 lib/machinery_logger.rb
machinery-tool-1.11.0 lib/machinery_logger.rb
machinery-tool-1.10.0 lib/machinery_logger.rb
machinery-tool-1.9.1 lib/machinery_logger.rb
machinery-tool-1.9.0 lib/machinery_logger.rb
machinery-tool-1.8.2 lib/machinery_logger.rb
machinery-tool-1.8.1 lib/machinery_logger.rb