Sha256: 3459438dc888bb17303a4be27174ea032f8034ba7b525522350c6a8b1d9062c0

Contents?: true

Size: 1.68 KB

Versions: 1

Compression:

Stored size: 1.68 KB

Contents

module Keystone
  
  #
  # ログレベルに関してのローカルルール(ログ確認に関して)
  # debug    対応不要
  # info     対応不要
  # warn     複数個で営業時間内対応
  # notice   1つで営業時間内対応
  # error    1つで営業時間内対応
  # alert    複数個で即時対応
  # critical 1つで即時対応
  #
  module Base
    def log(log_type,message, is_base_info = true)
      
      # ......nangiyana
      message.gsub!(/\r\n/,"\n")
      message.gsub!(/\r/,"\n")
      
      messages = message.split("\n")
      if messages.size > 1
        messages.each_with_index do |st,i|
          if i == 0
            puts "[#{Time.now.strftime("%Y/%m/%d %H:%M:%S")}][#{$$}][#{log_type.to_s}] #{st}"
          else
            puts "[#{log_type.to_s}] #{st}"
          end
        end
      else
        if is_base_info
          puts "[#{Time.now.strftime("%Y/%m/%d %H:%M:%S")}][#{$$}][#{log_type.to_s}] #{message}"
        else
          puts "[#{log_type.to_s}] #{message}"
        end
      end
    end

    def error(message)
      if message.is_a? Exception
        log(:ERROR,"#{message.message}")
        message.backtrace.each_with_index {|line, i|
          log(:ERROR,"#{line})",false)
        }
      else
        log(:ERROR,message.to_s)
      end
    end

    def info(message)
      log(:INFO,message)
    end

    def warn(message)
      log(:WARN,message)
    end

    def notice(message)
      log(:NOTICE,message)
    end
    
    def alert(message)
      log(:ALERT,message)
    end    

    def critical(message)
      log(:CRIT,message)
    end    

    def debug(message)
      if $DEBUG
        log(:DEBUG,message)
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
keystone-0.0.29 lib/keystone/base.rb