Merge pull request #1 from arikarim/Rails_logger

Add Logger production path
This commit is contained in:
Brusk Awat 2022-12-17 13:30:54 +03:00 committed by GitHub
commit 6c53348d0a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
11 changed files with 59 additions and 44 deletions

10
Gemfile
View File

@ -1,12 +1,14 @@
# frozen_string_literal: true # frozen_string_literal: true
source "https://rubygems.org" source 'https://rubygems.org'
# Specify your gem's dependencies in rabbit_carrots.gemspec # Specify your gem's dependencies in rabbit_carrots.gemspec
gemspec gemspec
gem "rake", "~> 13.0" gem 'rake', '~> 13.0'
gem "rspec", "~> 3.0" gem 'rspec', '~> 3.0'
gem "rubocop", "~> 1.21" gem 'rubocop', '~> 1.21'
gem 'rubocop-rails', '~> 2.17'

View File

@ -1,24 +1,34 @@
PATH PATH
remote: . remote: .
specs: specs:
rabbit_carrots (0.1.14) rabbit_carrots (0.1.15)
bunny (>= 2.19.0) bunny (>= 2.19.0)
connection_pool (~> 2.3.0) connection_pool (~> 2.3.0)
GEM GEM
remote: https://rubygems.org/ remote: https://rubygems.org/
specs: specs:
activesupport (7.0.4)
concurrent-ruby (~> 1.0, >= 1.0.2)
i18n (>= 1.6, < 2)
minitest (>= 5.1)
tzinfo (~> 2.0)
amq-protocol (2.3.2) amq-protocol (2.3.2)
ast (2.4.2) ast (2.4.2)
bunny (2.19.0) bunny (2.19.0)
amq-protocol (~> 2.3, >= 2.3.1) amq-protocol (~> 2.3, >= 2.3.1)
sorted_set (~> 1, >= 1.0.2) sorted_set (~> 1, >= 1.0.2)
concurrent-ruby (1.1.10)
connection_pool (2.3.0) connection_pool (2.3.0)
diff-lcs (1.5.0) diff-lcs (1.5.0)
i18n (1.12.0)
concurrent-ruby (~> 1.0)
json (2.6.2) json (2.6.2)
minitest (5.16.3)
parallel (1.22.1) parallel (1.22.1)
parser (3.1.2.1) parser (3.1.2.1)
ast (~> 2.4.1) ast (~> 2.4.1)
rack (3.0.1)
rainbow (3.1.1) rainbow (3.1.1)
rake (13.0.6) rake (13.0.6)
rbtree (0.4.5) rbtree (0.4.5)
@ -49,11 +59,17 @@ GEM
unicode-display_width (>= 1.4.0, < 3.0) unicode-display_width (>= 1.4.0, < 3.0)
rubocop-ast (1.23.0) rubocop-ast (1.23.0)
parser (>= 3.1.1.0) parser (>= 3.1.1.0)
rubocop-rails (2.17.3)
activesupport (>= 4.2.0)
rack (>= 1.1)
rubocop (>= 1.33.0, < 2.0)
ruby-progressbar (1.11.0) ruby-progressbar (1.11.0)
set (1.0.3) set (1.0.3)
sorted_set (1.0.3) sorted_set (1.0.3)
rbtree rbtree
set (~> 1.0) set (~> 1.0)
tzinfo (2.0.5)
concurrent-ruby (~> 1.0)
unicode-display_width (2.3.0) unicode-display_width (2.3.0)
PLATFORMS PLATFORMS
@ -64,6 +80,7 @@ DEPENDENCIES
rake (~> 13.0) rake (~> 13.0)
rspec (~> 3.0) rspec (~> 3.0)
rubocop (~> 1.21) rubocop (~> 1.21)
rubocop-rails (~> 2.17)
BUNDLED WITH BUNDLED WITH
2.3.23 2.3.26

View File

@ -1,11 +1,11 @@
# frozen_string_literal: true # frozen_string_literal: true
require "bundler/gem_tasks" require 'bundler/gem_tasks'
require "rspec/core/rake_task" require 'rspec/core/rake_task'
RSpec::Core::RakeTask.new(:spec) RSpec::Core::RakeTask.new(:spec)
require "rubocop/rake_task" require 'rubocop/rake_task'
RuboCop::RakeTask.new RuboCop::RakeTask.new

View File

@ -1,24 +1,23 @@
# frozen_string_literal: true # frozen_string_literal: true
require_relative "rabbit_carrots/version" require_relative 'rabbit_carrots/version'
require 'rabbit_carrots/connection' require 'rabbit_carrots/connection'
require 'rabbit_carrots/configuration' require 'rabbit_carrots/configuration'
require 'rabbit_carrots/railtie' if defined?(Rails) require 'rabbit_carrots/railtie' if defined?(Rails)
module RabbitCarrots module RabbitCarrots
class Error < StandardError; end class Error < StandardError; end
module EventHandlers module EventHandlers
module Errors module Errors
class IrrelevantMessage < StandardError class IrrelevantMessage < StandardError
end end
class NackMessage < StandardError class NackMessage < StandardError
end end
class NackAndRequeueMessage < StandardError class NackAndRequeueMessage < StandardError
end end
end end
end end
end end

View File

@ -4,7 +4,7 @@ module RabbitCarrots
class Connection class Connection
include ::Singleton include ::Singleton
attr_reader :connection attr_reader :connection
def initialize def initialize
@connection = Bunny.new( @connection = Bunny.new(
host: RabbitCarrots.configuration.rabbitmq_host, host: RabbitCarrots.configuration.rabbitmq_host,
@ -16,11 +16,11 @@ module RabbitCarrots
@connection.start @connection.start
end end
def channel def channel
@channel ||= ConnectionPool.new do @channel ||= ConnectionPool.new do
connection.create_channel connection.create_channel
end end
end end
end end
end end

View File

@ -10,4 +10,4 @@ module RabbitCarrots
Dir.glob("#{path}/tasks/**/*.rake").each { |f| load f } Dir.glob("#{path}/tasks/**/*.rake").each { |f| load f }
end end
end end
end end

View File

@ -10,7 +10,7 @@ namespace :rabbit_carrots do
{ **mapping, handler: mapping[:handler].constantize } { **mapping, handler: mapping[:handler].constantize }
end end
Rails.logger = Logger.new($stdout) Rails.logger = Logger.new(Rails.env.production? ? '/proc/self/fd/1' : $stdout)
# Run RMQ Subscriber for each channel # Run RMQ Subscriber for each channel
channels.each do |channel| channels.each do |channel|

View File

@ -1,5 +1,5 @@
# frozen_string_literal: true # frozen_string_literal: true
module RabbitCarrots module RabbitCarrots
VERSION = "0.1.14" VERSION = '0.1.15'
end end

View File

@ -1,24 +1,24 @@
# frozen_string_literal: true # frozen_string_literal: true
require_relative "lib/rabbit_carrots/version" require_relative 'lib/rabbit_carrots/version'
Gem::Specification.new do |spec| Gem::Specification.new do |spec|
spec.name = "rabbit_carrots" spec.name = 'rabbit_carrots'
spec.version = RabbitCarrots::VERSION spec.version = RabbitCarrots::VERSION
spec.authors = ["Brusk Awat"] spec.authors = ['Brusk Awat']
spec.email = ["broosk.edogawa@gmail.com"] spec.email = ['broosk.edogawa@gmail.com']
spec.summary = "A simple RabbitMQ consumer task" spec.summary = 'A simple RabbitMQ consumer task'
spec.description = "A background task based on rake to consume RabbitMQ messages" spec.description = 'A background task based on rake to consume RabbitMQ messages'
spec.homepage = "https://github.com/ditkrg" spec.homepage = 'https://github.com/ditkrg'
spec.license = "MIT" spec.license = 'MIT'
spec.required_ruby_version = ">= 3.1.0" spec.required_ruby_version = '>= 3.1.0'
spec.metadata["allowed_push_host"] = "https://rubygems.org" spec.metadata['allowed_push_host'] = 'https://rubygems.org'
spec.metadata["homepage_uri"] = spec.homepage spec.metadata['homepage_uri'] = spec.homepage
spec.metadata["source_code_uri"] = "https://github.com/ditkrg/rabbit_carrots" spec.metadata['source_code_uri'] = 'https://github.com/ditkrg/rabbit_carrots'
spec.metadata["changelog_uri"] = "https://github.com/ditkrg/rabbit_carrots" spec.metadata['changelog_uri'] = 'https://github.com/ditkrg/rabbit_carrots'
# Specify which files should be added to the gem when it is released. # Specify which files should be added to the gem when it is released.
# The `git ls-files -z` loads the files in the RubyGem that have been added into git. # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
@ -27,14 +27,15 @@ Gem::Specification.new do |spec|
(f == __FILE__) || f.match(%r{\A(?:(?:bin|test|spec|features)/|\.(?:git|travis|circleci)|appveyor)}) (f == __FILE__) || f.match(%r{\A(?:(?:bin|test|spec|features)/|\.(?:git|travis|circleci)|appveyor)})
end end
end end
spec.bindir = "exe" spec.bindir = 'exe'
spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) } spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
spec.require_paths = ["lib"] spec.require_paths = ['lib']
# Uncomment to register a new dependency of your gem # Uncomment to register a new dependency of your gem
spec.add_dependency "bunny", ">= 2.19.0" spec.add_dependency 'bunny', '>= 2.19.0'
spec.add_dependency "connection_pool", "~> 2.3.0" spec.add_dependency 'connection_pool', '~> 2.3.0'
# For more information and examples about making a new gem, check out our # For more information and examples about making a new gem, check out our
# guide at: https://bundler.io/guides/creating_gem.html # guide at: https://bundler.io/guides/creating_gem.html
spec.metadata['rubygems_mfa_required'] = 'true'
end end

View File

@ -1,11 +1,7 @@
# frozen_string_literal: true # frozen_string_literal: true
RSpec.describe RabbitCarrots do RSpec.describe RabbitCarrots do
it "has a version number" do it 'has a version number' do
expect(RabbitCarrots::VERSION).not_to be nil expect(RabbitCarrots::VERSION).not_to be nil
end end
it "does something useful" do
expect(false).to eq(true)
end
end end

View File

@ -1,10 +1,10 @@
# frozen_string_literal: true # frozen_string_literal: true
require "rabbit_carrots" require 'rabbit_carrots'
RSpec.configure do |config| RSpec.configure do |config|
# Enable flags like --only-failures and --next-failure # Enable flags like --only-failures and --next-failure
config.example_status_persistence_file_path = ".rspec_status" config.example_status_persistence_file_path = '.rspec_status'
# Disable RSpec exposing methods globally on `Module` and `main` # Disable RSpec exposing methods globally on `Module` and `main`
config.disable_monkey_patching! config.disable_monkey_patching!