rails_use_case 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +3 -2
  3. data/lib/rails/service.rb +23 -3
  4. metadata +31 -3
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d9cd28e7a8c4f8f88597a7047a12e3b342a88256798572c55fbc8f30407af566
4
- data.tar.gz: 4a2a7d0e5779aaabbf3a6a172b5f88a1cfd4faf4b6a58fab1b581c76f3d7012c
3
+ metadata.gz: 378667c4e3d11d0bcd91399781dad9059f27fe367d3ff0e2f318a4e7c50b8dd6
4
+ data.tar.gz: 9fc7f010004ef4978c2b8342c5682579dcb78333db7866e546513ccfc2869168
5
5
  SHA512:
6
- metadata.gz: 5135d55bdab90e5d8cf0c454d90712afe87726b575e49a81d9b477b204f01f05b1b7f2366542b101fa9a62742e4403e8a7846be1d6e77289ca0038bc27b60af0
7
- data.tar.gz: c77c6b87d683be50c54e5a3c3235738e144addc3df07292954e4aca7a209ddf1bef017dfa1dc5bcb07b5bb35f2610e5d11162032aa35fa0d641717411247a58f
6
+ metadata.gz: 64007c7637a4227673408117aa71b6e47182b36dfe18ec21d942bc7d1bcee4b2e99f8d2bd003ed50eed3868a047f6968f3c6d1f101a465101688507c319eac2f
7
+ data.tar.gz: 1d31a07cf8fef50723344aa175f121c0a7e3fd02937a4b2af29145402a9894ebce2de8e0d8915c0431dcad801bf1fa228988c677c511eb4edd4e80d629695ad4
data/README.md CHANGED
@@ -176,8 +176,9 @@ which is available via the `config` method.
176
176
 
177
177
  ### Logging
178
178
 
179
- The service los to a separate log file `log/services/[service_name].log`. You can write additional
180
- logs via `logger.info(msg)`.
179
+ Each service automatically logs to a separate log file `log/services/[service_name].log`. You can write additional logs via `logger.info(msg)`.
180
+
181
+ It's possible to force the services to log to STDOUT by setting the environment variable `SERVICE_LOGGER_STDOUT`. This is useful for Heroku for example.
181
182
 
182
183
 
183
184
  ## License
data/lib/rails/service.rb CHANGED
@@ -50,9 +50,29 @@ module Rails
50
50
 
51
51
  # Create the log file and sets @logger
52
52
  private def setup_logger
53
- log_path = Rails.root.join('log', 'services')
54
- FileUtils.mkdir_p(log_path) unless Dir.exist?(log_path)
55
- @logger = Logger.new(Rails.root.join('log', 'services', "#{@service_name}.log").to_s)
53
+ if ENV['SERVICE_LOGGER_STDOUT']
54
+ setup_stdout_logger
55
+ else
56
+ log_path = Rails.root.join('log', 'services')
57
+ FileUtils.mkdir_p(log_path) unless Dir.exist?(log_path)
58
+
59
+ log_file = log_path.join("#{@service_name}.log").to_s
60
+
61
+ FileUtils.touch log_file
62
+ @logger = Logger.new(log_file)
63
+ end
64
+ end
65
+
66
+
67
+ # Will setup the logger for logging to STDOUT. This can be useful for
68
+ # Heroku for example.
69
+ private def setup_stdout_logger
70
+ @logger = Logger.new(STDOUT)
71
+
72
+ @logger.formatter = proc do |severity, datetime, progname, msg|
73
+ msg = "[@service_name] #{msg}"
74
+ original_formatter.call(severity, datetime, progname, msg.dump)
75
+ end
56
76
  end
57
77
 
58
78
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_use_case
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Benjamin Klein
@@ -11,7 +11,7 @@ cert_chain: []
11
11
  date: 2020-04-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: railties
14
+ name: activemodel
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
17
  - - ">="
@@ -25,7 +25,7 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: 4.1.0
27
27
  - !ruby/object:Gem::Dependency
28
- name: activemodel
28
+ name: railties
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - ">="
@@ -52,6 +52,34 @@ dependencies:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
54
  version: '0.6'
55
+ - !ruby/object:Gem::Dependency
56
+ name: fakefs
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: 1.2.0
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: 1.2.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: pry
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: 0.13.0
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: 0.13.0
55
83
  - !ruby/object:Gem::Dependency
56
84
  name: rake
57
85
  requirement: !ruby/object:Gem::Requirement