class SEKOIA::Formatter

Constants

Format
SekoiaID

Public Class Methods

format( priority: 14, timestamp: nil, log: "", hostname: "-", app_name: "-", proc_id: "-", msg_id: "-", intake_key: "" ) click to toggle source
# File lib/sekoia/formatter.rb, line 9
def format(
  priority: 14,
  timestamp: nil,
  log: "",
  hostname: "-",
  app_name: "-",
  proc_id: "-",
  msg_id: "-",
  intake_key: ""
)
  Format % [priority, format_time(timestamp), hostname[0..254], app_name[0..47], proc_id[0..127], msg_id[0..31], format_structured_data(intake_key), log]
end
format_structured_data(intake_key) click to toggle source
# File lib/sekoia/formatter.rb, line 22
def format_structured_data(intake_key)
  %{[#{SekoiaID} intake_key="#{intake_key}"]}
end
format_time(timestamp) click to toggle source
# File lib/sekoia/formatter.rb, line 26
def format_time(timestamp)
  return "-" if timestamp.nil?
  return Time.at(timestamp.to_r).utc.to_datetime.rfc3339(6) if timestamp.is_a?(Fluent::EventTime)

  DateTime.strptime(timestamp.to_s, '%s').rfc3339(6)
end