Sha256: 2084a2a46ea2ec5e9c8f18e342dcb4243680e69699d48977d8c55d124bd100f9
Contents?: true
Size: 586 Bytes
Versions: 4
Compression:
Stored size: 586 Bytes
Contents
require 'multi_json' require 'active_support/json' require 'syslog' class StructuredEventLogger::Syslogger class MessageExceedsMaximumSize < StructuredEventLogger::Error; end attr_accessor :log_level, :max_size def initialize(log_level = Syslog::LOG_INFO, max_size = 64 * 1024 - 1) @log_level, @max_size = log_level, max_size end def call(scope, event, hash, record) message = MultiJson.encode(record) raise MessageExceedsMaximumSize, "Event too big to be submitted to syslog" if message.bytesize > max_size Syslog.log(log_level, '%s', message) end end
Version data entries
4 entries across 4 versions & 1 rubygems