Sha256: 19186d3f3d55aa3adeb7b26439c6d593eb353e706886d662c1284238b02fe57b
Contents?: true
Size: 1.88 KB
Versions: 2
Compression:
Stored size: 1.88 KB
Contents
# frozen_string_literal: true module Cryptum # This plugin is used to instantiate a Cryptum logger with a custom message format module Log # Supported Method Parameters:: # Cryptum::Log.create( # ) public_class_method def self.append(opts = {}) # Leave 10 "old" log files where # each file is ~ 1,024,000 bytes log_file = File.open('/tmp/cryptum.log', 'a') logger = Logger.new( log_file, 10, 1_024_000 ) level = opts[:level].to_s.downcase.to_sym msg = opts[:msg] which_self = opts[:which_self].to_s event_history = opts[:event_history] exit_gracefully = false case level when :debug logger.level = Logger::DEBUG when :error logger.level = Logger::ERROR exit_gracefully = true when :fatal # This is reserved for: # Cryptum::UI::Exit # module(s) if StandardError is triggered. # This ensures we're not infintely attempting # to log to file and exit. logger.level = Logger::FATAL when :unknown logger.level = Logger::UNKNOWN when :warn logger.level = Logger::WARN when :info logger.level = Logger::INFO else raise "ERROR: Invalid log level. Valid options are:\n:info\n:warn\n:unknown\n:fatal\n:error\n:debug" end logger.datetime_format = '%Y-%m-%d %H:%M:%S.%N' if msg.instance_of?(Interrupt) logger.add(logger.level, 'CTRL+C Detected...Ended Session.', which_self) else logger.add(logger.level, msg, which_self) end Cryptum::UI::Exit.gracefully(event_history: event_history) if exit_gracefully rescue Interrupt, StandardError => e raise e end # Display Usage for this Module public_class_method def self.help puts "USAGE: logger = #{self}.create() " end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
cryptum-0.0.388 | lib/cryptum/log.rb |
cryptum-0.0.387 | lib/cryptum/log.rb |