class Banter::RabbitLogger
Public Class Methods
enabled?()
click to toggle source
# File lib/banter/rabbit_logger.rb, line 7 def self.enabled? true # Banter::Configuration.logging_enabled end
failed_publish(routing_key, properties, envelope)
click to toggle source
# File lib/banter/rabbit_logger.rb, line 16 def self.failed_publish(routing_key, properties, envelope) internal_log(:error, "BANTER FAILED_SEND", envelope, routing_key, { properties: properties, payload:envelope[:payload] }) end
internal_log(log_level, log_type, envelope, routing_key, payload)
click to toggle source
# File lib/banter/rabbit_logger.rb, line 50 def self.internal_log(log_level, log_type, envelope, routing_key, payload) return unless enabled? tags = [log_type, envelope[:ts].to_s, envelope[:pub], envelope[:v].to_s, routing_key].compact.map{|x| utf(x)} logger.tagged(tags) { logger.send(log_level, utf(payload.to_s)) } end
log(log_level, message)
click to toggle source
# File lib/banter/rabbit_logger.rb, line 45 def self.log(log_level, message) tags = ["BANTER LOG_LEVEL:#{@@log_map[log_level].capitalize.to_s}", Process::pid.to_s].map{|x| utf(x)} logger.tagged(tags) { logger.send(@@log_map[log_level], utf(message.as_json.to_s) ) } end
log_complete(routing_key, envelope)
click to toggle source
# File lib/banter/rabbit_logger.rb, line 24 def self.log_complete(routing_key, envelope) internal_log(:warn, "BANTER COMPLETED", envelope, routing_key, envelope[:payload]) end
log_publish(routing_key, envelope)
click to toggle source
# File lib/banter/rabbit_logger.rb, line 12 def self.log_publish(routing_key, envelope) internal_log(:warn, "BANTER PUBLISH", envelope, routing_key, envelope[:payload]) end
log_receive(routing_key, envelope)
click to toggle source
# File lib/banter/rabbit_logger.rb, line 20 def self.log_receive(routing_key, envelope) internal_log(:warn, "BANTER RECEIVED", envelope, routing_key, envelope[:payload]) end
log_service(service_name, message)
click to toggle source
# File lib/banter/rabbit_logger.rb, line 39 def self.log_service(service_name, message) return unless enabled? tags = ["BANTER SERVICE", service_name, Process::pid] logger.tagged(tags) { logger.info message.as_json} end
log_subscriber_failed(routing_key, delivery_info, properties, envelope, contents)
click to toggle source
# File lib/banter/rabbit_logger.rb, line 28 def self.log_subscriber_failed(routing_key, delivery_info, properties, envelope, contents) if envelope.nil? # message could not be parsed, so we have to log this one differently. tags = ["BANTER SUBSCRIBER FAILED", Time.now.to_i.to_s, routing_key].map{|x| utf(x)} logger.tagged(tags) { logger.send(:error, utf( "contents: #{contents.to_s} -- properties: #{properties.to_s}")) } else internal_log(:warn, "BANTER SUBSCRIBER FAILED", envelope, routing_key, { delivery_info: delivery_info, properties: properties, contents: envelope[:payload] } ) end end
logger()
click to toggle source
# File lib/banter/rabbit_logger.rb, line 56 def self.logger Banter.logger end
utf(field)
click to toggle source
# File lib/banter/rabbit_logger.rb, line 60 def self.utf(field) field.force_encoding('utf-8') end