class SumologicCloudSyslog::Logger

Attributes

token[R]
transport[RW]

Public Class Methods

new(transport, token) click to toggle source

Logger accepts transport which should implement IO methods close, closed? and write

# File lib/sumologic_cloud_syslog/logger.rb, line 25
def initialize(transport, token)
  @transport = transport
  @default_header = SumologicCloudSyslog::Header.new
  @default_structured_data = SumologicCloudSyslog::StructuredData.new(token)
end

Public Instance Methods

app_name(val) click to toggle source

Sets default app_name for each message

# File lib/sumologic_cloud_syslog/logger.rb, line 42
def app_name(val)
  @default_header.app_name = val
end
close() click to toggle source
# File lib/sumologic_cloud_syslog/logger.rb, line 56
def close
  transport.close
end
closed?() click to toggle source

Check if IO is closed

# File lib/sumologic_cloud_syslog/logger.rb, line 52
def closed?
  transport && transport.closed?
end
facility(val) click to toggle source

Sets default facility for each message

# File lib/sumologic_cloud_syslog/logger.rb, line 32
def facility(val)
  @default_header.facility = val
end
hostname(val) click to toggle source

Sets default hostname for each message

# File lib/sumologic_cloud_syslog/logger.rb, line 37
def hostname(val)
  @default_header.hostname = val
end
log(severity, message, time: nil) { |header| ... } click to toggle source

Send log message with severity to Sumologic

# File lib/sumologic_cloud_syslog/logger.rb, line 61
def log(severity, message, time: nil)
  time ||= Time.now

  m = SumologicCloudSyslog::Message.new

  # Include authentication header
  m.structured_data << @default_structured_data

  # Adjust header with current timestamp and severity
  m.header = @default_header.dup
  m.header.severity = severity
  m.header.timestamp = time

  yield m.header if block_given?

  m.msg = message

  transport.write(m.to_s)
end
procid(val) click to toggle source

Sets default procid for message

# File lib/sumologic_cloud_syslog/logger.rb, line 47
def procid(val)
  @default_header.procid = val
end