class Idcf::Cli::Lib::Util::CliLogger

logger level: shwo LOG_METHODS

Constants

LOG_METHODS

Attributes

current_path[R]
logger[R]

Public Class Methods

cleaning(o) click to toggle source

logrotate file delete

# File lib/idcf/cli/lib/util/cli_logger.rb, line 39
def cleaning(o)
  paths     = log_paths
  log_limit = Idcf::Cli::Lib::Configure.get_code_conf('log_limit', o).to_i
  return unless paths.size > log_limit
  paths.reverse[log_limit, paths.size].each do |f|
    File.unlink(f)
  end
end
delete() click to toggle source

open file delete

# File lib/idcf/cli/lib/util/cli_logger.rb, line 31
def delete
  return nil unless output_log?
  path = log_path
  return nil unless File.exist?(path)
  File.unlink(path)
end
log_instance() click to toggle source
# File lib/idcf/cli/lib/util/cli_logger.rb, line 17
def log_instance
  return nil unless output_log?
  return logger unless logger.nil?
  path          = log_path
  @current_path = path
  Idcf::Cli::Lib::Util::CliFile.mkdir(path)

  Idcf::Cli::Lib::Util::CliFile.writable(path) if File.exist?(path)
  @logger      = Logger.new(path)
  logger.level = Idcf::Cli::Conf::Const::LOG_LEVEL
  logger
end
log_paths() click to toggle source
# File lib/idcf/cli/lib/util/cli_logger.rb, line 48
def log_paths
  dir_path = File.expand_path('..', log_path)
  Dir.glob("#{dir_path}/#{Idcf::Cli::Conf::Const::LOG_FILE_PREFIX}*")
end
method_missing(name, *args) click to toggle source
Calls superclass method
# File lib/idcf/cli/lib/util/cli_logger.rb, line 57
def method_missing(name, *args)
  return super unless LOG_METHODS.index(name.to_s)
  arg = [args[0]]
  arg << args[1] unless args[1].nil?
  add(name, *arg)
end
respond_to_missing?(symbol, _include_prvate) click to toggle source
# File lib/idcf/cli/lib/util/cli_logger.rb, line 53
def respond_to_missing?(symbol, _include_prvate)
  LOG_METHODS.index(symbol.to_s) ? true : false
end

Protected Class Methods

add(severity_name, data) click to toggle source
# File lib/idcf/cli/lib/util/cli_logger.rb, line 84
def add(severity_name, data)
  return nil unless output_log?
  severity = "Logger::Severity::#{severity_name.upcase}".constantize
  log      = log_instance
  log.add(severity, data.to_s)
end
log_path() click to toggle source
# File lib/idcf/cli/lib/util/cli_logger.rb, line 75
def log_path
  base_path = Idcf::Cli::Lib::Configure.get_user_conf('log_path')

  path = "#{base_path}/#{Idcf::Cli::Conf::Const::LOG_FILE_NAME}"
  File.expand_path(path)
rescue StandardError => _e
  nil
end
output_log?() click to toggle source
# File lib/idcf/cli/lib/util/cli_logger.rb, line 66
def output_log?
  conf = Idcf::Cli::Lib::Configure
  return false unless conf.get_user_conf('output_log').casecmp('y').zero?
  path = conf.get_user_conf('log_path')
  path.present?
rescue StandardError => _e
  false
end