Module: Kafkr
- Defined in:
- lib/kafkr.rb,
lib/kafkr/log.rb,
lib/kafkr/version.rb,
lib/kafkr/consumer.rb,
lib/kafkr/producer.rb,
lib/kafkr/encryptor.rb,
lib/kafkr/message_broker.rb
Defined Under Namespace
Modules: Producer
Classes: Consumer, Encryptor, Error, Log, LostConnection, MessageBroker
Constant Summary
collapse
- VERSION =
"0.18.0"
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.current_environment ⇒ Object
Returns the value of attribute current_environment.
18
19
20
|
# File 'lib/kafkr.rb', line 18
def current_environment
@current_environment
end
|
Class Method Details
.configuration ⇒ Object
93
94
95
|
# File 'lib/kafkr.rb', line 93
def self.configuration
@configuration ||= OpenStruct.new
end
|
97
98
99
100
101
|
# File 'lib/kafkr.rb', line 97
def self.configure
yield(configuration)
rescue => e
logger.error("Configuration error: #{e.message}")
end
|
23
24
25
26
27
28
29
30
31
32
|
# File 'lib/kafkr.rb', line 23
def configure_logger(output = default_output)
begin
@logger = ::Logger.new(output)
rescue Errno::EACCES, Errno::ENOENT => e
@logger = ::Logger.new(STDOUT)
@logger.error("Could not open log file: #{e.message}")
end
set_logger_level
@logger
end
|
.default_output ⇒ Object
34
35
36
37
38
39
40
41
|
# File 'lib/kafkr.rb', line 34
def default_output
case current_environment
when "production"
"/var/log/kafkr.log"
else
STDOUT
end
end
|
.development? ⇒ Boolean
60
61
62
|
# File 'lib/kafkr.rb', line 60
def development?
current_environment == "development"
end
|
.logger ⇒ Object
19
20
21
|
# File 'lib/kafkr.rb', line 19
def logger
@logger ||= configure_logger
end
|
.production? ⇒ Boolean
72
73
74
|
# File 'lib/kafkr.rb', line 72
def production?
current_environment == "production"
end
|
.set_logger_level ⇒ Object
43
44
45
46
47
48
49
50
51
52
53
54
|
# File 'lib/kafkr.rb', line 43
def set_logger_level
@logger.level = case current_environment
when "development"
::Logger::DEBUG
when "staging"
::Logger::INFO
when "production"
::Logger::WARN
else
::Logger::DEBUG
end
end
|
.staging? ⇒ Boolean
68
69
70
|
# File 'lib/kafkr.rb', line 68
def staging?
current_environment == "staging"
end
|
.test? ⇒ Boolean
64
65
66
|
# File 'lib/kafkr.rb', line 64
def test?
current_environment == "test"
end
|
.write(message, unique_id = nil) ⇒ Object
Also known as:
log, output, info, record, trace
76
77
78
79
80
81
82
|
# File 'lib/kafkr.rb', line 76
def write(message, unique_id = nil)
begin
logger.info(message)
rescue IOError => e
@logger.error("Failed to write log: #{e.message}")
end
end
|