Sha256: e8644eff1be181f340ece5b3c37cb9cd2eb7689262ba8e191490bbcad8a91c09

Contents?: true

Size: 704 Bytes

Versions: 5

Compression:

Stored size: 704 Bytes

Contents

module Progstr
  class LogMessage
    LEVELS = { :info => 0, :warning => 1, :error => 2, :fatal => 3 } 
    LEVELS.default = 0

    attr_reader :text, :source, :host, :level, :time

    def initialize(params)
      @text = params[:text]
      @source = params[:source]
      @host = params[:host]
      @level = params[:level]
      @time = params[:time]
    end

    def to_hash
      {:text => @text, :source => @source, :host => get_host(@host), :level => LEVELS[@level], :time => encode_time(@time)}
    end

    def encode_time(time)
      time ||= Time.now
      (time.to_f * 1000).to_i
    end

    def get_host(host)
      host || Socket.gethostname || ENV["HOST"] || "Unknown"
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
progstr-ruby-1.0.6 lib/progstr/log_message.rb
progstr-ruby-1.0.5 lib/progstr/log_message.rb
progstr-ruby-1.0.4 lib/progstr/log_message.rb
progstr-ruby-1.0.3 lib/progstr/log_message.rb
progstr-ruby-1.0.2 lib/progstr/log_message.rb