Module: LogStasher::Device
- Defined in:
- lib/logstasher/device.rb,
lib/logstasher/device/redis.rb,
lib/logstasher/device/syslog.rb
Defined Under Namespace
Class Method Summary collapse
Class Method Details
.factory(config) ⇒ Object
3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
# File 'lib/logstasher/device.rb', line 3 def self.factory(config) config = stringify_keys(config) type = config.delete('type') or fail ArgumentError, 'No "type" given' case type when 'redis', :redis then require 'logstasher/device/redis' ::LogStasher::Device::Redis.new(config) when "syslog", :syslog then require 'logstasher/device/syslog' ::LogStasher::Device::Syslog.new(config) else fail ArgumentError, "Unknown type: #{type}" end end |
.stringify_keys(hash) ⇒ Object
19 20 21 22 23 24 |
# File 'lib/logstasher/device.rb', line 19 def stringify_keys(hash) hash.inject({}) do |stringified_hash, (key, value)| stringified_hash[key.to_s] = value stringified_hash end end |