Class: QasDockGem::RedisService
- Inherits:
-
Object
- Object
- QasDockGem::RedisService
- Defined in:
- lib/qas_dock_gem/services/redis_services.rb
Instance Method Summary collapse
- #connect_redis(uri, port = nil) ⇒ Object
- #get_key_redis(redis, key) ⇒ Object
-
#initialize ⇒ RedisService
constructor
A new instance of RedisService.
- #initialize_redis(uri, port = nil) ⇒ Object
- #set_key_redis(redis, key, value, ttl) ⇒ Object
Constructor Details
#initialize ⇒ RedisService
Returns a new instance of RedisService.
5 6 7 8 9 |
# File 'lib/qas_dock_gem/services/redis_services.rb', line 5 def initialize require 'logger' require 'redis' @logger = Logger.new($stdout) end |
Instance Method Details
#connect_redis(uri, port = nil) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
# File 'lib/qas_dock_gem/services/redis_services.rb', line 16 def connect_redis(uri, port = nil) redis_params = initialize_redis(uri, port) redis = Redis.new(redis_params) begin redis.ping redis rescue StandardError => e redis = nil @logger.error("Params Redis: #{JSON.pretty_generate(JSON.parse(redis_params.to_json))}") @logger.error("Exceção retornada do Redis: #{e.inspect} - Mensagem: #{e.}") end redis end |
#get_key_redis(redis, key) ⇒ Object
31 32 33 34 35 36 37 38 39 |
# File 'lib/qas_dock_gem/services/redis_services.rb', line 31 def get_key_redis(redis, key) @logger.info("Buscando chave #{key} no Redis") begin redis.get(key) rescue StandardError => e @logger.error("Exceção retornada do redis ao consultar a chave: #{e}") nil end end |
#initialize_redis(uri, port = nil) ⇒ Object
11 12 13 14 |
# File 'lib/qas_dock_gem/services/redis_services.rb', line 11 def initialize_redis(uri, port = nil) port = 6379 if port.nil? { host: uri, port: port, connect_timeout: 0.5, read_timeout: 1.0, write_timeout: 1.0 } end |
#set_key_redis(redis, key, value, ttl) ⇒ Object
41 42 43 44 45 46 47 48 49 50 |
# File 'lib/qas_dock_gem/services/redis_services.rb', line 41 def set_key_redis(redis, key, value, ttl) @logger.info("Cadastrando chave #{key} com valor: #{value} e tempo de duração: #{ttl}") begin set_redis = redis.set(key, value, ex: ttl) @logger.info('Chave cadastrada com sucesso no redis') if set_redis == 'OK' rescue StandardError => e @logger.error("Exceção retornada do redis ao cadastrar a chave: #{e}") nil end end |