class OhMyLog::SyslogImplementor

Attributes

facility[RW]
public_ip[R]
severity[RW]
tag[R]

Public Class Methods

new(hostname: nil, priority: nil, facility: nil, severity: nil, tag: nil, program_name: "NA", syslog_facility: "Syslog::LOG_LOCAL1") click to toggle source
# File lib/oh_my_log/syslog_implementor.rb, line 12
def initialize(hostname: nil, priority: nil, facility: nil, severity: nil, tag: nil, program_name: "NA", syslog_facility: "Syslog::LOG_LOCAL1")
  @hostname = retrive_hostname
  @public_ip = retrive_public_ip
  @priority = priority
  @facility = facility
  @severity = severity
  @tag = tag
  @program_name = program_name
  @syslog_facility = syslog_facility
  OhMyLog::Log.configuration.log_instance = Syslog::Logger.new program_name, syslog_facility.constantize
  # override_log_formatter
end

Public Instance Methods

new_using(processor_name) click to toggle source
# File lib/oh_my_log/syslog_implementor.rb, line 25
def new_using(processor_name)
  OhMyLog::SyslogConfiguration.use(processor_name)
  SyslogImplementor.new(hostname: @hostname, priority: @priority, facility: @facility, severity: @severity, tag: @tag, program_name: @program_name, syslog_facility: @syslog_facility)
end
print(params) click to toggle source

TODO no need to pass :ip we can retrieve it from this class

Calls superclass method

Private Instance Methods

get_binary_chunks(string, size) click to toggle source
# File lib/oh_my_log/syslog_implementor.rb, line 53
def get_binary_chunks(string, size)
  Array.new(((string.length + size - 1) / size)) {|i| string.byteslice(i * size, size)}
end
retrive_hostname() click to toggle source
# File lib/oh_my_log/syslog_implementor.rb, line 71
def retrive_hostname
  Socket.gethostname rescue nil
end
retrive_public_ip() click to toggle source

def override_log_formatter

OhMyLog::Log.configuration.log_instance.formatter = proc do |severity, datetime, progname, msg|
  "#{msg}\n"
end

end

# File lib/oh_my_log/syslog_implementor.rb, line 63
def retrive_public_ip
  if Rails.env.test?
    "127.0.0.1"
  else
    Net::HTTP.get(URI("http://checkip.amazonaws.com")).gsub("\n", "") rescue nil
  end
end