fmrest-core 0.15.2 → 0.16.0
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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +5 -0
- data/README.md +13 -2
- data/lib/fmrest.rb +14 -1
- data/lib/fmrest/connection_settings.rb +2 -0
- data/lib/fmrest/v1/connection.rb +2 -2
- data/lib/fmrest/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 02e8b51abdf2fc9a5b7df29cdad8d5acef8f04b5c6167d7ff94040a716117449
|
4
|
+
data.tar.gz: 6a78ce64f39cd5e41910114eb22948eb5c4f26d26a892ab2b09c0bdcaa6c3fb3
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3bdd91f7e25de359a7a28746d4c7be4eae7a684b63d909eacae6dd48a7053666386ff6dd3b87895aaf315e6a6b923aadcf0b8713aefa696fadbef25656dbae3b
|
7
|
+
data.tar.gz: 37d292af43be4a6a42b4f4044d3078ec40edff189622e3d4390d4a9ec65e34b0b910b2542ca4293ea3d3925eea8c84f1c944a5d7c7cc22f47bf989113b1017d7
|
data/CHANGELOG.md
CHANGED
data/README.md
CHANGED
@@ -152,6 +152,7 @@ Option | Description | Format
|
|
152
152
|
`:ssl` | SSL options to be forwarded to Faraday | Faraday SSL options | None
|
153
153
|
`:proxy` | Proxy options to be forwarded to Faraday | Faraday proxy options | None
|
154
154
|
`:log` | Log JSON responses to STDOUT | Boolean | `false`
|
155
|
+
`:log_level` | Which log level to log into | Values accepted by `Logger#level=` | `:debug`
|
155
156
|
`:coerce_dates` | See section on [date fields](#date-fields-and-timezones) | Boolean \| `:hybrid` \| `:full` | `false`
|
156
157
|
`:date_format` | Date parsing format | String (FM date format) | `"MM/dd/yyyy"`
|
157
158
|
`:timestamp_format` | Timestmap parsing format | String (FM date format) | `"MM/dd/yyyy HH:mm:ss"`
|
@@ -457,7 +458,7 @@ If using `fmrest-spyke` with Rails then pretty log output will be set up for
|
|
457
458
|
you automatically by Spyke (see [their
|
458
459
|
README](https://github.com/balvig/spyke#log-output)).
|
459
460
|
|
460
|
-
You can also enable simple Faraday
|
461
|
+
You can also enable simple Faraday logging of raw requests (useful for
|
461
462
|
debugging) by passing `log: true` in the options hash for either
|
462
463
|
`FmRest.default_connection_settings=` or your models' `fmrest_config=`, e.g.:
|
463
464
|
|
@@ -478,7 +479,17 @@ class LoggyBee < FmRest::Layout
|
|
478
479
|
end
|
479
480
|
```
|
480
481
|
|
481
|
-
|
482
|
+
You can also pass `log_level` to connection settings to change the severity of
|
483
|
+
log output (defaults to `:debug`).
|
484
|
+
|
485
|
+
By default fmrest-ruby logs to STDOUT or to Rails' logger object if available.
|
486
|
+
You can change this by providing your own logger object to `FmRest.logger=`:
|
487
|
+
|
488
|
+
```ruby
|
489
|
+
FmRest.logger = Logger.new("fmrest.log")
|
490
|
+
```
|
491
|
+
|
492
|
+
If you need to set up more complex logging for your models you can use the
|
482
493
|
`faraday` block inside your class to inject your own logger middleware into the
|
483
494
|
Faraday connection, e.g.:
|
484
495
|
|
data/lib/fmrest.rb
CHANGED
@@ -15,9 +15,13 @@ module FmRest
|
|
15
15
|
|
16
16
|
class << self
|
17
17
|
attr_accessor :token_store
|
18
|
+
attr_writer :logger
|
18
19
|
|
19
20
|
def default_connection_settings=(settings)
|
20
|
-
|
21
|
+
# Skip validation since we may use the defaults for half-complete
|
22
|
+
# settings
|
23
|
+
@default_connection_settings =
|
24
|
+
ConnectionSettings.wrap(settings, skip_validation: true)
|
21
25
|
end
|
22
26
|
|
23
27
|
def default_connection_settings
|
@@ -34,6 +38,15 @@ module FmRest
|
|
34
38
|
default_connection_settings
|
35
39
|
end
|
36
40
|
|
41
|
+
def logger
|
42
|
+
@logger ||= if defined?(Rails)
|
43
|
+
Rails.logger
|
44
|
+
else
|
45
|
+
require "logger"
|
46
|
+
Logger.new($stdout)
|
47
|
+
end
|
48
|
+
end
|
49
|
+
|
37
50
|
# Shortcut for FmRest::V1.escape_find_operators
|
38
51
|
#
|
39
52
|
# @param (see FmRest::V1.escape_find_operators
|
@@ -24,6 +24,7 @@ module FmRest
|
|
24
24
|
ssl
|
25
25
|
proxy
|
26
26
|
log
|
27
|
+
log_level
|
27
28
|
coerce_dates
|
28
29
|
date_format
|
29
30
|
timestamp_format
|
@@ -45,6 +46,7 @@ module FmRest
|
|
45
46
|
DEFAULTS = {
|
46
47
|
autologin: true,
|
47
48
|
log: false,
|
49
|
+
log_level: :debug,
|
48
50
|
date_format: DEFAULT_DATE_FORMAT,
|
49
51
|
time_format: DEFAULT_TIME_FORMAT,
|
50
52
|
timestamp_format: DEFAULT_TIMESTAMP_FORMAT,
|
data/lib/fmrest/v1/connection.rb
CHANGED
@@ -41,7 +41,7 @@ module FmRest
|
|
41
41
|
end
|
42
42
|
|
43
43
|
if settings.log
|
44
|
-
conn.response :logger,
|
44
|
+
conn.response :logger, FmRest.logger, bodies: true, headers: true, log_level: settings.log_level
|
45
45
|
end
|
46
46
|
|
47
47
|
conn.adapter Faraday.default_adapter
|
@@ -61,7 +61,7 @@ module FmRest
|
|
61
61
|
conn.basic_auth settings.username!, settings.password!
|
62
62
|
|
63
63
|
if settings.log
|
64
|
-
conn.response :logger,
|
64
|
+
conn.response :logger, FmRest.logger, bodies: true, headers: true, log_level: settings.log_level
|
65
65
|
end
|
66
66
|
|
67
67
|
conn.response :json
|
data/lib/fmrest/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fmrest-core
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.16.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Pedro Carbajal
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date: 2021-04-
|
11
|
+
date: 2021-04-14 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: faraday
|